旋转后的线位置 - 摆动

时间:2016-03-12 17:33:03

标签: java swing graphics2d

我需要计算一条线的方向矢量的笛卡尔方程。用户可以像这样自由旋转视点。

观点
Point of view

观点2
Point of view 2

如果我知道线的两个点但是在点旋转后我无法找回正确的位置会很容易,看起来线的位置保持不变,我不太明白Graphics2D如何旋转工作。这是代码的一大块。

{{1}}

提前感谢您的回答/解释。

1 个答案:

答案 0 :(得分:1)

Graphics2D的旋转工作原理如下:

translate(x, y);
rotate(theta);
translate(-x, -y);

因此,您将相同的转换应用于原始行以获得两个新点:

tx=px+x;
ty=py+y;
rx=tx*Math.cos(a)-ty*Math.sin(a);
ry=.....
pnewx=rx-x;
pnewy=ry-y;

和另一个点(px,py)相同。