convertToWorldSpace - cocos2d - PullRequest
       3

convertToWorldSpace - cocos2d

7 голосов
/ 23 февраля 2011
  • convertToWorldSpace

Привет, я не уверен, что понимаю, как это работает. API утверждает, что он преобразует локальную координату в мировое пространство.

Допустим, у меня есть три спрайта. spriteA добавлен в сцену, а spriteB добавлен в spriteA. И spriteC добавлен в spriteB.

- Scene
    - spriteA
        - spriteB
            - spriteC

И я хочу преобразовать источник spriteC в мир

Если я это сделаю: [self convertToWorldSpace:[spriteC CGPointZero]];

или это: [spriteA convertToWorldSpace:[spriteC CGPointZero]];

или это: [spriteB convertToWorldSpace:[spriteC CGPointZero]];

или даже [spriteC convertToWorldSpace:[spriteC CGPointZero]];

Не должны ли они дать один и тот же ответ, поскольку все они преобразованы в мировые координаты? Или я перейду из одного пространства узлов в пространство родительских узлов ... пока не доберусь до мирового пространства.

каков правильный ответ, чтобы увидеть положение spriteC в мировых координатах?

Ответы [ 3 ]

4 голосов
/ 06 марта 2012

Чтобы найти источник мирового пространства на spriteC, вы берете родителя спрайтов, в данном случае spriteB и запрашиваете мировое пространство своего потомка:

[spriteB convertToWorldSpace:[spriteC CGPointZero]];
1 голос
/ 06 марта 2012
[spriteC convertToWorldSpace:CGPointZero];

Как отвечает Казуки, но CGPointZero является глобальным.

0 голосов
/ 24 февраля 2011
[spriteC convertToWorldSpace:[spriteC CGPointZero]];

convertToWorldSpace: метод преобразует пространство одного узла в пространство родительского узла ... до тех пор, пока оно не попадет в пространство мира.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...