计算旋转的矩形/精灵的边/角

问题描述:

如何计算旋转的矩形的所有角,并且anchorXY位于中间(0.5,0.5)。 有人可以为它提供一些功能吗?计算旋转的矩形/精灵的边/角

+0

我不明白你在问什么。旋转后你想知道矩形的角落位置吗?如果是这样,请检查* 2d线性转换*,或编辑您的问题提供一些具体的例子,我们可以提供具体的答案。 – kajacx

+0

是矩形的角落。但是当我们有x的锚时,y设置为中间。所以旋转点位于矩形的中间... – user3673265

使用三角法。

设(非旋转,平行​​于轴)矩形的初始坐标为: (0,0),(8,10)。 (左下,右上)。让它旋转角度x,保持原点不变。然后,新坐标将为:

(0,0),(8 * cos(x),8 * sin(x)),(8 * cos(x)-10 * sin(x) (x)+ 10 * cos(x)),(-10 * sin(x),10 * cos(x))

您可以看看https://en.wikipedia.org/wiki/Rotation_of_axes

编辑:

翻译轴:

如果原点从(0,0)移动到(H,K),点(X,Y)将改变到(x + h时, y + k)。因此,如果旋转锚(0.5,0.5),

  • 带来起源于这一点(轴平移)
  • 找到所有点转动轴后(见上文,轴的旋转)
  • 再次将坐标轴翻译为上一个原点(再次翻译)
+0

但是当我们有x,y的锚点设置为中间时。所以旋转点在矩形的中间......我怎么能比计算角? – user3673265

+0

轴的平移。 – vish4071

+0

您能否为我提供一个数学函数? – user3673265