Java 旋转矩形后获得一个点
我有一个精灵,我知道它的位置和后面的矩形。 我想知道精灵后面的位置,我知道偏移量 我的观点是:Java 旋转矩形后获得一个点,java,math,Java,Math,我有一个精灵,我知道它的位置和后面的矩形。 我想知道精灵后面的位置,我知道偏移量 我的观点是: Point p=new Point(sprite.getX()-offset,sprite.getY()-sprite.getHeight()/2); 如果我围绕其中心原点旋转精灵,我希望获得该点的新位置 可以更好地解释以下内容的图像: 查看Libgdx上的Sprite源代码,在getVertices()上,有计算,但在本地,这可能会有所帮助 这样很有用 在Wolfram MathWorld或Wi
Point p=new Point(sprite.getX()-offset,sprite.getY()-sprite.getHeight()/2);
如果我围绕其中心原点旋转精灵,我希望获得该点的新位置
可以更好地解释以下内容的图像:
查看Libgdx上的Sprite源代码,在getVertices()上,有计算,但在本地,这可能会有所帮助 这样很有用
在Wolfram MathWorld或Wikipedia(例如)上查找该类的文档以及任意数量的源代码。在Java中,您的精灵可能会使用
仿射变换类在旋转的帧中进行渲染,因此如果您仔细应用变换,您甚至不必自己做任何额外的数学运算来获得尾随点的位置。在这个api中,精灵类有一个获得旋转的方法,查看该文档是否有用您需要提供旋转中心(保持固定的点)的坐标
如果你不给我们一个线索,告诉我们什么不起作用也很好…(我正在使用这个,但不太合适)double sx=((line.getStartX()-circle.getCenterX())*Math.cos(rotation))-((line.getStartY()-circle.getCenterY())*Math.sin(rotation))+circle.getCenterX()@杰伊:这句话也适用于你:“告诉我们什么不起作用也很好,因为你没有给出任何线索……”我只想知道两件事1)如何获得角度,2)这个角度是辐射度或度数1)如何获得角度:从什么角度获得???2) 辐射角度或角度:就像数学要求一样,我在Game Maker Studio 2中使用了这个,但我必须做(360度),然后将角度转换为弧度,否则它会朝错误的方向旋转。
xnew = x * cos(angle) - y * sin(angle)
ynew = y * cos(angle) + x * sin(angle)
X' = (X - Xc) * cos(A) - (Y - Yc) * sin(A) + Xc
Y' = (Y - Yc) * cos(A) + (X - Xc) * sin(A) + Yc