2014-05-10 56 views
2

我是節點「架子」,這是「自我」(現場)的孩子的孩子的圖標。我也有裝飾品,是節點「車」的孩子,也是「自我」的孩子。的iOS - 轉換點從一個座標系到另一個

當一個圖標從貨架上拖出並放到車上時,圖標節點將被移除,並在其位置產生一個裝飾節點,該節點是「車輛」而不是「貨架」的孩子。這是一個問題:當裝飾節點產生時,由於「貨架」和「車輛」的座標系統不協調,它會在場景中跳遠。

我如何轉換新裝修節點從它的位置在「貨架」節點到新的位置在「車輛」,因此,它不跳?

(如果你需要它,我可以張貼代碼,但它會很長,凌亂。)

+0

?無論哪種方式,你嘗試過嗎? http://stackoverflow.com/questions/15109958/understanding-convertpointtoview –

+0

嗯我不確定。我得看看意見。我想將其父座標系中節點的座標轉換爲另一個節點的另一個座標系。那有意義嗎? :S – 13rave

+0

兩個座標系0,0從左上角開始? –

回答

2

假設你正在使用雪碧套件,你可以使用SKNode方法convertPoint:toNode:協調系統之間的轉換點。

因此,例如,只要在vehicleNode的頂部拖動兩端:

CGPoint iconPos = iconNode.position; // this is position on shelf node 
iconPos = [shelfNode convertPoint:iconPos toNode:vehicleNode]; 

// ... remove iconNode from shelfNode 
// ... make new decorationNode 

decorationNode.position = iconPos; // this is now position on vehicle node 

// ... add decorationNode to vehicleNode 
你想從一個轉換座標系統到一個視圖的另一個或座標,以另一種意見認爲
+1

我認爲你說SceneKit?你應該說在你的問題 –

+0

的主題我早些時候嘗試過...它不工作。我不知道我做錯了什麼! – 13rave

+0

當我打印出來的位置被轉換之前和之後,這會打印: 首先 {81.779503,63.055557} 二 {81.779503,63.055557} – 13rave

相關問題