- 締切済み
processingのプログラムの書き方について。
課題で、どこからマウスをプレスしても20個もの四角を(0,0)まで数珠つなぎみたいにするプログラムをかいているんですが全然わかりません。 そのため大きさなどは瞬時に計算をするからmouse x, mouse yをつかいます だからrect(mouseX,mouseY,mouseX,mouseY)になると思うんですが。。 とにかく全部わかりません。教えてください。 自分が書いたのはこんなのですが、全然違います。 forループ、mouseX, mouseYを使うのはわかります int s = 600; int n = 20; int i = mouseX; void setup() { size(s,s); background(255); noStroke(); rectMode(CENTER); } void draw() { if(mousePressed) { for(int i=0; i<s; i++); { fill(255,0,0); rect(mouseX,mouseY,mouseX,mouseY); } } }
- みんなの回答 (2)
- 専門家の回答
みんなの回答
- hyakuson
- ベストアンサー率0% (0/0)
年明けてしまっているのですでに締切でしょうか? 課題でProcessingやらせてくれるなら自分で考えて楽しんだ方がよいかと思いますが、どうやるか考えてみたら楽しかったのでついでまでに。 void setup(){ size(200,200); } void draw(){ int x_space,y_space; background(0); if(mousePressed){ x_space = mouseX/20; y_space = mouseY/20; for(int i=0; i<20; i++){ noFill(); stroke(255); rectMode(CENTER); rect(i*x_space,i*y_space,10,10); } } } こういう感じでしょうかね?
- salsberry
- ベストアンサー率69% (495/711)
Processingというのはhttp://ja.wikipedia.org/wiki/Processingのことのようですね。 「どこからマウスをプレスしても20個もの四角を(0,0)まで数珠つなぎみたいにするプログラム」というのが具体的に何をしたいのか文面から読み取れません。添付の画像のような感じで合ってますか? それとも、20個の四角は全て同じ大きさですか? (mouseX,mouseY)がたとえば(15,10)という値だったら、そこから(0,0)までの間にどうやって20個の四角を数珠つなぎにしたいですか? 四角の幅や高さが1未満になってしまいそうです。