我正在尝试在画布上旋转 N 面多边形,但我遇到了坐标问题。这些形状似乎围绕着一个位于它们自身之外的原点旋转(我希望原点成为形状的中心)。任何提示将不胜感激。
var x = 50;
var y = 50;
var tranx;
var trany;
x -= tranx = x + shape.radius;
y -= trany = y + shape.radius;
elem.translate(tranx,trany);
elem.rotate(90 * radian);
var k = 0,
angle = 360/shape.sides;
elem.moveTo(x,y);
for (; k <shape.sides; k++) {
elem.lineTo(x+=Math.cos( ( angle * k )* radian) * shape.radius, y+=Math.sin( ( angle * k )* radian) * shape.radius);
}