2020年9月10日木曜日

思い切り走るゆき





aruduino processingで色を読み取る

マウスの位置の色を読み取ります。
------------------------------------
import processing.serial.*;
import cc.arduino.*;

Arduino arduino;
PImage myImage;




void setup(){
 size(640,480);

 println(Arduino.list());
 arduino = new Arduino(this,Arduino.list()[1],57600);

 myImage = loadImage("image.JPG");

}

void draw(){
 image(myImage,0,0,width,height);

 color pixelColor = get(mouseX,mouseY);
 float r = red(pixelColor);
 float g = green(pixelColor);
  float b = blue(pixelColor);
 
  float rd = dist(255,0,0,r,g,b);
  float gd = dist(0,255,0,r,g,b);
  float bd = dist(0,0,255,r,g,b);
  float yd = dist(255,255,0,r,g,b);
 
  float [] list = {rd,gd,bd,yd};
  float smallest = min(list);
 
  arduino.digitalWrite(2,Arduino.LOW);
  arduino.digitalWrite(3,Arduino.LOW);
  arduino.digitalWrite(4,Arduino.LOW);
  arduino.digitalWrite(5,Arduino.LOW);
 
  if(smallest == rd )arduino.digitalWrite(2,Arduino.HIGH);
  if(smallest == yd )arduino.digitalWrite(3,Arduino.HIGH);
  if(smallest == gd )arduino.digitalWrite(4,Arduino.HIGH);
  if(smallest == bd )arduino.digitalWrite(5,Arduino.HIGH);
}
--------------------------------------
arduinoの画像の名前が「image.JPG」です。
LEDが点灯する色と、実際の色が違っていました。
何が間違っているのでしょうか。


aruduino processingとの連携

processingからarduinoを動かします。

まず、arduinoがコンピュータとつながっていないとダメです。
そして、arduinoの設定として、
「ファイル」→「スケッチ例」→「Firmata」→「Standard Firmate」を選択します。
これをしないとarduinoに配線されたLEDなどは反応しません。

次、processingの設定。
「スケッチ」→「ライブラリをインポート」→「ライブラリを追加」で、
「Arduino(Firmata)」をインストールします。

これらを設定しなければ、processingとarduinoは連携できませんでした。
なるほど。

2020年9月9日水曜日

落ち着く場所


ゆき特集





VISUAL STUDIO 第9章 Visual C# 2019 デスクトップアプリ入門 終了

一気に終わりました。
完成です。
とはいうものの、1回目、第9章のタグを作成するところまではできたのですが、不用意な行削除をしてしまい、動かなくなりました。一度プログラムを書き込むと不用意に消すと取り返しがつかなくなります。
どこから削除すればいいのか、さらに調べなければなりません。
とりあえず、サンプルにたすけられながらやっとのことでできあがりました。

ここで
「Visual C# 2019 デスクトップアプリ入門」 秀和システム
荻原 裕之、宮崎 昭世 作は最後まで来ました。

VISUAL STUDIO 間違いの訂正

ここまでやってきて、試しに項目を入れて表示されるか見たところ、
ダメ。登録できません。
念のため、サンプルを試してみたところ、こちらはきちんと表示されます。
しかたがないので、サンプルプログラムと自分が作ったプログラムを印刷して比較しました。でも、間違いはありません。
いったいどういうことなのでしょうか。
プログラムに間違いが無いとなると、第7章で設定下部分が違っていたのかもしれないと考え、第7章をそれとなく見ていると、
「Tips」という項目が418ページにあり、ここに「登録」ボタンと「キャンセル」ボタンの設定について説明がありました。
ここでした。
「登録」ボタンのDialogResultが「None」になっていて、指示は、「OK」にすることだったのです。これだけで思うように動いていなかった。
すごいですね。
下の図の右下のプロパティ画面です。