float x1 = 100;
float y1 = 100;
float x2 = 200;
float y2 = 300;
float speed = 1.2;
void setup(){
size(500, 500);
}
void draw(){
go();
}
void go(){
if (x2 == x1 && y2 == y1) return;
float dx = x2 - x1;
float dy = y2 - y1;
float dd = sqrt(dx * dx + dy * dy);
println(dd);
if (dd < speed){
x1 = x2;
y1 = y2;
}else{
x1 += dx * (speed / dd);
y1 += dy * (speed / dd);
}
ellipse(x1,y1,50,50);
ellipse(100,100,10,10);
ellipse(200,300,10,10);
String t = "人物移动演示:两点间匀速移动";
text(t, 160, 60);
float y1 = 100;
float x2 = 200;
float y2 = 300;
float speed = 1.2;
void setup(){
size(500, 500);
}
void draw(){
go();
}
void go(){
if (x2 == x1 && y2 == y1) return;
float dx = x2 - x1;
float dy = y2 - y1;
float dd = sqrt(dx * dx + dy * dy);
println(dd);
if (dd < speed){
x1 = x2;
y1 = y2;
}else{
x1 += dx * (speed / dd);
y1 += dy * (speed / dd);
}
ellipse(x1,y1,50,50);
ellipse(100,100,10,10);
ellipse(200,300,10,10);
String t = "人物移动演示:两点间匀速移动";
text(t, 160, 60);
}