围绕中心

时间:2016-02-16 20:59:41

标签: rotation pivot trigonometry line-drawing

我必须使用专有的图形引擎来绘制线条。我可以按原点(P1)旋转整个绘图。我想要的是围绕它的中心点(M)旋转它。所以基本上它看起来像L_correct而不是L_wrong。

我认为,应该可以通过将它从P1移动到P2来纠正它。但我无法弄清楚可以使用什么公式来确定距离。它可能涉及角度,宽度和高度......

基本上我的问题是,如果有一个函数可以根据我的可用数据确定x2和y2吗?

1

1 个答案:

答案 0 :(得分:0)

假设您有一个基本方法,可以按任意给定角度phi旋转绘图。您想要的是使用该基元来围绕点D旋转图形M。这是一个如何进行的草图。

  1. -M翻译您的绘图,即将转化T(P) = P - M应用于绘图中的所有点P。让T(D)成为D

  2. 的翻译
  3. 现在使用基元将T(D)旋转所需的角度phi。让R(T(D))成为结果。

  4. 现在按M翻译上一个结果并获取旋转的绘图。换句话说,请使用转化T'(P) = P + M

  5. 请注意,在上面的步骤1中,M被映射到原始0,其中已知旋转原语可用。在步骤2中旋转后,步骤3的相反平移将图形放回其原始位置,因为此时0已映射到M