找到旋转的 SKSpriteNode 的精确帧
Find the Exact Frame of a rotated SKSpriteNode
我真的很想知道如何找到旋转的 SKSpriteNode
的精确帧。当前,SKSpriteNode
的框架如下所示:
这一帧是rect.frame
.
但是,由于 zRotation
,此帧包含很多空 space。我不想要这个空的 space,而是想要恰好 SKSpriteNode
的框架。
这就是我想要的:
我怎样才能做到这一点?如果您知道如何找到 SKSpriteNode
的 'exact' 框架,我真的很想知道。请使用SWIFT.
谢谢
这是可以做到的。
在精灵的左下方放置一个您知道其确切大小的虚拟节点。可能使用一个完美的正方形。将其锚定在 parent 的左下角。 parent 是您想要的确切尺寸定义。
从那里开始,有两种方式:
将虚拟 sprite 缩放到您感兴趣的 sprite 的大小,并使用这些测量结果确定 sprite 的位置以及它在任何时间点的大小。
在 parent 的右上角放置另一个虚拟精灵。在这种情况下,您可以使用两个虚拟对象的中点 objects,您不需要完美地使用它们的边缘。现在你可以随时找到这两个假人的位置,并计算出你的精灵在世界 space 单位中的 size/shape/outline。
这是方法 1 动画
我真的很想知道如何找到旋转的 SKSpriteNode
的精确帧。当前,SKSpriteNode
的框架如下所示:
这一帧是rect.frame
.
但是,由于 zRotation
,此帧包含很多空 space。我不想要这个空的 space,而是想要恰好 SKSpriteNode
的框架。
这就是我想要的:
我怎样才能做到这一点?如果您知道如何找到 SKSpriteNode
的 'exact' 框架,我真的很想知道。请使用SWIFT.
谢谢
这是可以做到的。
在精灵的左下方放置一个您知道其确切大小的虚拟节点。可能使用一个完美的正方形。将其锚定在 parent 的左下角。 parent 是您想要的确切尺寸定义。
从那里开始,有两种方式:
将虚拟 sprite 缩放到您感兴趣的 sprite 的大小,并使用这些测量结果确定 sprite 的位置以及它在任何时间点的大小。
在 parent 的右上角放置另一个虚拟精灵。在这种情况下,您可以使用两个虚拟对象的中点 objects,您不需要完美地使用它们的边缘。现在你可以随时找到这两个假人的位置,并计算出你的精灵在世界 space 单位中的 size/shape/outline。
这是方法 1 动画