2
的加工手冊(第二版)具有此如實施例17-10:如何在其中心旋轉PShape?
PShape zig;
void setup() {
size(100, 100);
zig = createShape();
zig.beginShape();
zig.fill(0);
zig.noStroke();
zig.vertex(10, 0);
zig.vertex(100, 30);
zig.vertex(90, 70);
zig.vertex(100, 70);
zig.vertex(10, 90);
zig.vertex(50, 40);
zig.endShape();
zig.scale(0.7);
zig.translate(-50, -50);
}
void draw() {
background(204);
shape(zig, 50, 50);
zig.rotate(0.01);
}
並在書中伴隨該示例中,圖像顯示的形狀圍繞所述畫布的中心旋轉。
但是,當我運行精確的代碼時,形狀圍繞畫布左上角的[0,0]點旋轉。
-50,-50平移和50,50座標似乎暗示我(基於我的理解有限)旋轉應該以[50,50]爲中心,但這不是當我運行代碼時承受不了?關於如何讓形狀繞其中心旋轉的任何想法? 我的意思是特別使用zig.rotate()方法,我知道你可以翻譯&作爲一個整體旋轉畫布,但我想圍繞它的中心旋轉這個形狀。 您可以在創建後更改PShapes原點嗎? 謝謝!