2013-10-03 86 views
0

我需要在現有精靈的角落產生4個新的SKSpriteNodes(獨立不是父元素)。它非常基本的東西,但我努力尋找正確的公式,雖然我有它,但它沒有按預期工作。有人可能會指出我正確的公式,或者給我一些關於計算任何給定旋轉的4 [x,y]對的指導。非常感激。將SKSpriteNodes定位在現有旋轉SKSpriteNode的角落

enter image description here

每個點到原點
  1. 移動旋轉中心。
  2. xnew = X * cos(角度) - Y * SIN(角度)
  3. ynew = Y * COS(角度)+ X * SIN(角度)
  4. 移動旋轉中心對於每個點回到原來的位置。

回答

1

如果你不想自己做數學,你可以使用CGPointApplyAffineTransform以及CGAffineTransformMakeRotation。乍一看,你的數學看起來幾乎是正確的,我相信你只需要減去中心點。所以xnew將是(x - x_c)* cos(a) - (y - y_c)* sin(a)。現在無法測試,因此無法100%確定。

+0

謝謝馬特,我會看看那些,非常感謝。 – fuzzygoat

+0

馬特,我還沒有機會嘗試這個,但我已閱讀文檔,它似乎只是我需要的,再次感謝您花時間回答。 – fuzzygoat