Object Corona SDK:连续旋转具有特定参考点的对象
我试着做一个正方形的移动,把它侧向旋转,它的参考点设置在它移动方向的底部 例如:如果我将正方形向右移动,我会将其参考点设置为其右下角,并设置90度旋转的动画,移动完成后,我将正方形X的宽度增加,并将其旋转中心设置为90度(以便我可以跟踪其位置) 问题是,我该如何继续重复?”因为如果我尝试使用右下角的参考点再旋转90度,它将不会使用正确的位置。我应该怎么做才能得到新的右下角相对位置Object Corona SDK:连续旋转具有特定参考点的对象,object,rotation,coronasdk,Object,Rotation,Coronasdk,我试着做一个正方形的移动,把它侧向旋转,它的参考点设置在它移动方向的底部 例如:如果我将正方形向右移动,我会将其参考点设置为其右下角,并设置90度旋转的动画,移动完成后,我将正方形X的宽度增加,并将其旋转中心设置为90度(以便我可以跟踪其位置) 问题是,我该如何继续重复?”因为如果我尝试使用右下角的参考点再旋转90度,它将不会使用正确的位置。我应该怎么做才能得到新的右下角相对位置 谢谢 创建一个两倍于正方形宽度和高度的透明图像。 将正方形放在左上角。 现在,围绕图像中心旋转图像将按照您描述的方式
谢谢 创建一个两倍于正方形宽度和高度的透明图像。 将正方形放在左上角。
现在,围绕图像中心旋转图像将按照您描述的方式旋转正方形。您需要一些数学来跟踪新底部的位置,使用一些简单的二维旋转公式,因此在旋转之前计算要修改的点的位置
然后使用xReference和yReference变量:)我将我的正方形称为“板条箱”,这是我试图使用的代码:crater.xReference=(crater.width*0.5)*math.cos(toRad(crater.rotation))-(crater.height*0.5)*math.sin(toRad(crater.rotation));板条箱Y参考=(板条箱高度*0.5)*数学cos(toRad(板条箱旋转))+(板条箱宽度*0.5)*数学sin(toRad(板条箱旋转));当板条箱旋转为0时,这是有效的,但之后就不起作用了。看起来,当我真的移动箱子并在之后中心旋转它时,我正在监听这个解决方案,但我必须能够在每次移动后检索板条箱x。有什么想法吗?