iPhone, система координат cocos2d

Я создал CocosNode, а затем вставил спрайт в этот узел. Я переместил узел и спрайт отдельно. В результате узел имеет некоторую координату, а спрайт имеет другую координату. Я вижу спрайт на экране, но координаты спрайта выходят за границы экрана.

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

Спасибо.


person Alex Honcharuk    schedule 19.02.2010    source источник
comment
Я нашел решение для этого. Я должен сделать следующее: (координата узла) - (координата спрайта) я получу какое-то значение. Если это значение равно от 0 до 320, то оно видно на экране. Если у вас есть лучшее решение, добро пожаловать.   -  person Alex Honcharuk    schedule 19.02.2010


Ответы (1)


Cocos предоставляет методы для этого. Чтобы преобразовать положение вашего узла в мировое пространство (система координат кокоса, y увеличивается к верхней части экрана), вы должны сделать:

[aSprite convertToWorldSpace:aSprite.position];

Чтобы преобразовать эту систему координат в систему координат просмотра iPhone (y увеличивается к нижней части экрана), выполните следующие действия:

[[CCDirector sharedDirector] convertToGL:[aSprite convertToWorldSpace:aSprite.position]];
person CJ Hanson    schedule 24.02.2010