
processing #4 マウスの動きに合わせるpart1
こんにちは、kazumaです。今回はマウスの動きに合わせた動作ができるprogramを書いていこうかなと思います。
課題
マウスの動きに合わせたprogram
使用関数ect
・ダブルforループ回路
・mouseX,mouseY
結果
こんな感じにできました。
int x = 5;
int y = 5;
void setup(){
size(170,170);
pixelDensity(1);
background(0);
}
void draw(){
background(0);
fill(255);
for(int i=5;i<116;i+=55){
for(int j=5;j<116;j+=55){
rect(i,j,50,50);
}
}
setsouse();
}
void setsouse(){
if(mouseX>5 && mouseX<55 && mouseY>0 &&mouseY<55){
fill(#fde47f);
rect(5,5,50,50);
}
if(mouseX>5 && mouseX<55 && mouseY>60 &&mouseY<110){
fill(#fde47f);
rect(5,60,50,50);
}
if(mouseX>5 && mouseX<55 && mouseY>115 &&mouseY<165){
fill(#fde47f);
rect(5,115,50,50);
}
if(mouseX>60 && mouseX<110 && mouseY>0 &&mouseY<55){
fill(#fde47f);
rect(60,5,50,50);
}
if(mouseX>60 && mouseX<110 && mouseY>60 &&mouseY<110){
fill(#fde47f);
rect(60,60,50,50);
}
if(mouseX>60 && mouseX<110 && mouseY>115 &&mouseY<165){
fill(#fde47f);
rect(60,115,50,50);
}
if(mouseX>115 && mouseX<165 && mouseY>5 &&mouseY<55){
fill(#fde47f);
rect(115,5,50,50);
}
if(mouseX>115 && mouseX<165 && mouseY>60 &&mouseY<110){
fill(#fde47f);
rect(115,60,50,50);
}
if(mouseX>115 && mouseX<165 && mouseY>115 &&mouseY<165){
fill(#fde47f);
rect(115,115,50,50);
}
}
個人的にはコードにかなり無駄が多いなとは思い反省しています。
特にviod setsouse()の部分に詰め込んだ反応の部分は一般性皆無で新しくマス目を増やそうとしたらさらに書かないといけなくてかなり面倒臭いコード化してる感ですね。
デザインというほどでもないですがこのマス目感はかなりかわいさがだせて結構気に入ってたりしてます、ちなみにこの黄色は色指定で#fde47fをつかって程よい淡い色で出してます。
今回のメインテーマでもある”マウスの動きに合わせた”というところはmouseX,mouseYを使って書きました、mouseX,mouseYを使うと勝手にマウスの現在の位置情報を入力してくれるので、変えるものに困ったときに、mouseX,mouseYを使ってみるのもいいかなと思いました。
今後、arduinoと連携して接触感知型のオセロでも作ったら面白いかなと思っています。そうなると接触センサーだったり同時に押されたらどうするのかなど考える点が多くなりモノづくりの難しさを知るところです(笑)
コードについてのアドバイスありましたらコメントでお願いします!
Happy Creating!!