14.analog_meter_1
มิเตอร์แบบเข็ม
ตัวอย่างการสร้างมิเตอร์แบบเข็ม เมื่อโปรแกรมทำงานเข็มมิเตอร์จะเปลี่ยนไปตามค่าที่สุ่มขึ้นมาได้
โปรแกรม
PImage img;
void setup() {
size(450,400);
img = loadImage("voltmeter_3.jpg");
}
void draw() {
background(255);
float v = random(0, 60);
draw_meter(20,50,v);
}
// x,y = Upper left corner.
// v = 0 to 60
void draw_meter(int x,int y,float v)
{
image(img, x, y);
float angle = PI*(60-v)/60;
float length = 140;
float px = width/2 + cos(angle)*length;
float py = height/2 + sin(angle)*length;
strokeWeight(2);
stroke(255, 0, 0);
line(200+x, 198+y, 200+x+cos(angle)*length, 198+y-sin(angle)*length);
fill(255,0,0);
ellipse(200+x, 198+y, 10, 10);
}
ทังนี้ภาพของมิเตอร์ต้องเก็บอยู่ในโฟลดเดอร์ DATA ซึ่งอยู่ในโฟลดเดอร์โปรเจคอีกที
ไฟล์ meter.zip เมื่อ unzip จะมีโฟลดเดอร์โปรแกรมนี้ทั้งหมดโปรแกรมแล