Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/google-apps-script/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Object Corona SDK:连续旋转具有特定参考点的对象_Object_Rotation_Coronasdk - Fatal编程技术网

Object Corona SDK:连续旋转具有特定参考点的对象

Object Corona SDK:连续旋转具有特定参考点的对象,object,rotation,coronasdk,Object,Rotation,Coronasdk,我试着做一个正方形的移动,把它侧向旋转,它的参考点设置在它移动方向的底部 例如:如果我将正方形向右移动,我会将其参考点设置为其右下角,并设置90度旋转的动画,移动完成后,我将正方形X的宽度增加,并将其旋转中心设置为90度(以便我可以跟踪其位置) 问题是,我该如何继续重复?”因为如果我尝试使用右下角的参考点再旋转90度,它将不会使用正确的位置。我应该怎么做才能得到新的右下角相对位置 谢谢 创建一个两倍于正方形宽度和高度的透明图像。 将正方形放在左上角。 现在,围绕图像中心旋转图像将按照您描述的方式

我试着做一个正方形的移动,把它侧向旋转,它的参考点设置在它移动方向的底部

例如:如果我将正方形向右移动,我会将其参考点设置为其右下角,并设置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。有什么想法吗?