質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Java

Javaは、1995年にサン・マイクロシステムズが開発したプログラミング言語です。表記法はC言語に似ていますが、既存のプログラミング言語の短所を踏まえていちから設計されており、最初からオブジェクト指向性を備えてデザインされています。セキュリティ面が強力であることや、ネットワーク環境での利用に向いていることが特徴です。Javaで作られたソフトウェアは基本的にいかなるプラットフォームでも作動します。

Processing

Processingは、オープンソースプロジェクトによるCGのためのプログラミング言語です。Javaをベースにしており、グラフィック機能に特化しています。イメージの生成やアニメーションなど、視覚的なフィードバックを簡単に得ることが可能です。

Q&A

1回答

3998閲覧

processing 画像を表示させて動かしたい

0pfrn

総合スコア8

Java

Javaは、1995年にサン・マイクロシステムズが開発したプログラミング言語です。表記法はC言語に似ていますが、既存のプログラミング言語の短所を踏まえていちから設計されており、最初からオブジェクト指向性を備えてデザインされています。セキュリティ面が強力であることや、ネットワーク環境での利用に向いていることが特徴です。Javaで作られたソフトウェアは基本的にいかなるプラットフォームでも作動します。

Processing

Processingは、オープンソースプロジェクトによるCGのためのプログラミング言語です。Javaをベースにしており、グラフィック機能に特化しています。イメージの生成やアニメーションなど、視覚的なフィードバックを簡単に得ることが可能です。

0グッド

0クリップ

投稿2022/01/15 16:03

前提・実現したいこと

エンターキーを押すと1ピクセルだけ右に移動する(processing 学習ノート様参考)ときに円ではなく自分の選んだ画像になるようにしたい。
画像が1ピクセルずつ動かせるようにしたい。

発生している問題・エラーメッセージ

実行されたが、エンターキーを押しても何も出てこない

該当のソースコード

java

1PImage img; 2 3float x = 0.0; 4float speed = 1.0; 5 6void setup() { 7 size(600, 600); 8} 9 10void draw() { 11} 12 13void keyPressed() { 14 background(204); 15 x += speed; 16 img = loadImage("〇〇.jpg"); 17} 18 19

試したこと

画像が同じファイル内に入ってなかったので入れてみたが何も出てこない

補足情報(FW/ツールのバージョンなど)

ここにより詳細な情報を記載してください。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

TN8001

2022/01/15 21:12

未解決の質問が残っています。 [processing](https://teratail.com/questions/368363 [ゲームの初期化をさせたい](https://teratail.com/questions/377435 それらはギブアップということなんでしょうか?(だとしたらそのように自己回答し閉めてください) そうでないなら「質問への追記・修正の依頼」や「回答」へ、返信や対応をしてください。
0pfrn

2022/01/15 23:51

解決済にさせて頂きました。 対応遅くなり申し訳ございません ありがとうございます
thkana

2022/01/16 06:37

いやいや、とにかくベストアンサーつけろ、ということじゃなくて 「どのように解決に至ったか」を書いてくださいな。(諦めた、というならそれはそれであり) 一応ここに参加している以上は https://teratail.com/help#about-teratail 「プログラミングをする中で起きた解決できない課題について本当に困っている人をサポートすること、また、価値のあるコンテンツを世の中に残し届ける事を目的としています。」に賛同しているかと思います。つまり後半「世の中に残し届ける」ためにはあなたがどう解決したか、という情報を提供しないと完成しないんじゃないかと思うわけですよ。
0pfrn

2022/01/16 07:54

すみません! 解決の経緯書き足しました。 追記修正依頼ありがとうございます
guest

回答1

0

b-02 反応させる(マウス、キーボードからの入力に) - Proessing 学習ノート

keyPressed() {...} キーが押されたときに1回だけ {...} の中を実行する

こちらですね。
loadImageは画像を読み込む命令であって、画像を表示(描画)する命令ではありません。

一度「画像を使う」のところに戻って確認してください。
a-07 画像を使う - Proessing 学習ノート

loadImage() / Reference / Processing.org
image() / Reference / Processing.org
imageMode() / Reference / Processing.org

Processing

1PImage img; 2float x = 0.0; 3float speed = 1.0; 4 5void setup() { 6 size(400, 400); 7 8 imageMode(CENTER); 9 img = loadImage("https://teratail-v2.storage.googleapis.com/uploads/avatars/u20/200162/RFuaxO4Y_thumbnail.jpg"); 10} 11 12void draw() { 13} 14 15void keyPressed() { 16 background(204); 17 x += speed; 18 19 //ellipse(x, height/2, 60, 60); 20 image(img, x, height/2); 21}

「キーが押されたときに1回だけ実行する」を説明するため(キーを押さない限りなにも出ない)このような書き方になっているのでしょうが、本来は↓の(描画にかかわるものはdraw内に書く)ような書き方が望ましいです。

Processing

1PImage img; 2float x = 0.0; 3float speed = 1.0; 4 5void setup() { 6 size(400, 400); 7 8 imageMode(CENTER); 9 img = loadImage("https://teratail-v2.storage.googleapis.com/uploads/avatars/u20/200162/RFuaxO4Y_thumbnail.jpg"); 10} 11 12void draw() { 13 background(204); 14 15 //ellipse(x, height/2, 60, 60); 16 image(img, x, height/2); 17} 18 19void keyPressed() { 20 x += speed; 21}

現状「エンターキー」でなくても(何キーでも)動いてしまいますが、キーを区別するような場合はkeykeyCodeを使用します。

Processing

1void keyPressed() { 2 if (key == ENTER || key == RETURN) { 3 x += speed; 4 } 5}

key / Reference / Processing.org
keyCode / Reference / Processing.org


画像が同じファイル内に入ってなかったので入れてみたが何も出てこない

フォルダ内ですね。
Processing IDEに画像をドラッグ&ドロップすると、画像をコピーして配置してくれるので楽です^^

デバッグする場合はまず「画像を単に表示するだけ」のように、「どこまでは問題ないのか」を確認するようにするといいです。
それができれば「画像の読み込み」・「画像の表示」まではOKだったということになります。

それを書く過程(私だってすべて覚えているわけではないので「どうやるんだっけな?」とggります)で、image()がないことに(自力で)気が付いたでしょう^^

投稿2022/01/15 20:59

編集2023/07/29 14:24
TN8001

総合スコア9321

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0pfrn

2022/01/16 04:56

The file "neko.jpg" is missing or inaccessible, make sure the URL is valid or that the file has been added to your sketch and is readable. NullPointerException Could not run the sketch (Target VM failed to initialize). For more information, read revisions.txt and Help → Troubleshooting. というエラーをはいてしまいましたが、neko,jpgという画像をドラッグ&ドロップして自動的にdataファイルにはいったのでloadImageのところを変えたのですが何も出てきません。 この場合はどうすればよいのでしょうか
TN8001

2022/01/16 08:13

ファイル「neko.jpg」が見つからないかアクセスできません。 と言っていますね。 本当にneko.jpgがあるかを、もう一度確認してください。 neko,jpg(カンマ)ではダメです。 それでも解決しない場合は新たに建てた質問のほうで、(ちゃんとneko.jpgがあるのを)エクスプローラー(Windows)やFinder(Mac)の画像かなんかを提示してください。 [processing NullPointerException エラー](https://teratail.com/questions/t6liqq64e1tzve
0pfrn

2022/01/16 09:07

新しい方画像追加させていただきました dataのところに入っているのを確認しました
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問