就是做出这种效果,主要就是我的旋转是绕画布上某一个点旋转,而不是各自绕其中心旋转,怎么破,求解。
int num = 50;
float r;
Rect[] re = new Rect[num];
void setup(){
size(800, 600);
rectMode(CENTER);
for (int i =0; i<num; i++) {
re[i] = new Rect(random(width),random(height), random(10, 80), random(45, 91));
}
}
void draw() {
background(255);
translate(width/2,height/2);
frameRate(5);
for (int i =0; i<num; i++) {
re[i].display();
re[i].change();
re[i].move();
}
}
class Rect {
float x, y, diameter, angle;
Rect(float a, float b, float c, float r) {
x= a;
y= b;
diameter = c;
angle = r;
}
void display() {
stroke(0);
fill(50, 90);
rect(x, y, diameter, diameter);
}
void move() {
if (diameter<80) {
diameter+=10;
} else {
diameter = 30;
}
}
void change() {
if (r <90) {
r++;
} else {
r = 45;
}
rotate(radians(r));
}
}
https://blog.csdn.net/qq_39097425/article/details/84980717
请问该如何让图形围绕自身中心旋转