0

我需要SKSpriteNodes在现有精灵的角落生成 4 个新的(独立的,不是父级的)。它是非常基本的东西,但我正在努力寻找正确的公式,虽然我有它,但它没有按预期工作。有些人可以为我指出正确的公式,或者帮助我提供一些关于计算任何给定旋转的 4 [x, y] 对的指导。非常感激。

在此处输入图像描述

  1. 将每个点的旋转中心移动到原点。
  2. xnew = x * cos(角度) - y * sin(角度)
  3. ynew = y * cos(角度) + x * sin(角度)
  4. 将每个点的旋转中心移回原始位置。
4

1 回答 1

1

如果你不想自己做数学,你可以使用CGPointApplyAffineTransformwith 。CGAffineTransformMakeRotation尽管乍一看您的数学看起来几乎正确,但我相信您只需要减去中心点即可。所以 xnew 将是 (x - x_c) * cos(a) - (y - y_c) * sin(a)。现在无法测试,所以不能 100% 确定。

于 2013-10-03T15:43:27.870 回答