2012-08-26 5 views
1

저는 cocos2d를 사용하여 iphone 응용 프로그램을 개발 중이며 좌표를 부모 공간에서 하위 공간으로 변환하는 데 문제가 있습니다.cocos2d에서 부모 공간으로 변환

각 요소의 위치는 0입니다 (0,0은 왼쪽 위 모서리에 있고 왼쪽 아래에는 없음). 각 요소에는 부모가있을 수 있습니다. 요소가 부모를 가지면 그 위치는 부모의 로컬 좌표 공간에있다.

예 : 난 (부모없이) 내가 이런 좌표 계산 스프라이트를 추가하면

Sprite1 at global position(10,10) 
Sprite2 at global position(20,20) 
    Sprite3 at local position(20,20) and at global position(40,40) 
     Sprite4 at local position(30,30) and at global position(70,70) 

: 좌표

CCSprite * sprite = [CCSprite spriteWithFile:image]; 
CGPoint position = [[CCDirector sharedDirector] convertToGL: ccp(element.x, element.y); 
sprite.position = position; 

및 요소들은 공간은 좌측 상단에서 개시 전 앵커 포인트 설정해야합니다 :

sprite.anchor = ccp(0,1) 
이 부모없이 요소에 대해 작동

,하지만 w 암탉 나는 위의 코드를 가진 부모와 요소를 추가하는 위치가 잘못되었습니다. 어떻게하면 좌표를 올바르게 계산할 수 있습니까? (모든 부모를 반복하지 않고도)?

감사합니다.

답변

0

CCNode은 방법이 convertFromWorldSpace(AR):convertToWorldSpace(AR):입니다. 그것들을 사용하여 먼저 세계 좌표로 변환 한 다음 부모 공간으로 되돌릴 수 있습니다.

+0

예를 들어 볼 수 있습니다. – blejzz

관련 문제