Определение координат точки пивоты любого объекта относительно сцены — различия между версиями
Sadovoy (обсуждение | вклад) |
Sadovoy (обсуждение | вклад) м |
||
Строка 8: | Строка 8: | ||
:Обязательно машинке ставим память, чтобы переход выполнился один раз. Осуществляет переход паровозиком из состояния в состояние, однотонная логика перемещена в машинку get_located_interface. | :Обязательно машинке ставим память, чтобы переход выполнился один раз. Осуществляет переход паровозиком из состояния в состояние, однотонная логика перемещена в машинку get_located_interface. | ||
− | + | Как работает: | |
:1) Меняем машинке родителя ( объект координаты которого мы хотим узнать); | :1) Меняем машинке родителя ( объект координаты которого мы хотим узнать); | ||
:2) Задаём машине get_located_interface параметр '''param_name''' - этот параметр машинка прочитает из себя и добавит в конец окончания '''_х''' и '''_у''': к примеру если передадим param_name = big ; у машинки 2located_interface_position после обработки логики появятся два параметра: big_x и big_y; | :2) Задаём машине get_located_interface параметр '''param_name''' - этот параметр машинка прочитает из себя и добавит в конец окончания '''_х''' и '''_у''': к примеру если передадим param_name = big ; у машинки 2located_interface_position после обработки логики появятся два параметра: big_x и big_y; | ||
− | + | :3) Задаём машине get_located_interface параметр машине '''go_state''' - состояние в которое эта машина переведёт машину 2located_interface_position. | |
[[Файл:2located.jpg|centre|1000px]] | [[Файл:2located.jpg|centre|1000px]] | ||
Строка 19: | Строка 19: | ||
== Машинка иттератор get_located_interface== | == Машинка иттератор get_located_interface== | ||
− | + | Думаю и так всё ясно: | |
:1) задаём нашей машинке 2located_interface_position координаты относительно родителя 0,0; | :1) задаём нашей машинке 2located_interface_position координаты относительно родителя 0,0; | ||
:2) меняем машинке родителя на сцену; | :2) меняем машинке родителя на сцену; |
Текущая версия на 11:14, 19 декабря 2014
- У любого объекта мы можем считать параметры x и y, но только относительно их родителя. Если нам нужно знать координаты относительно сцены ( для полёта анимации к объекту и т.д.), то предлагаю использовать следующую схему:
Использовать две машинки: одна управляющая (2located_interface_position), вторая выполняет однотонную работу (иттерации) (get_located_interface)
Управляющая машинка 2located_interface_position
- Обязательно машинке ставим память, чтобы переход выполнился один раз. Осуществляет переход паровозиком из состояния в состояние, однотонная логика перемещена в машинку get_located_interface.
Как работает:
- 1) Меняем машинке родителя ( объект координаты которого мы хотим узнать);
- 2) Задаём машине get_located_interface параметр param_name - этот параметр машинка прочитает из себя и добавит в конец окончания _х и _у: к примеру если передадим param_name = big ; у машинки 2located_interface_position после обработки логики появятся два параметра: big_x и big_y;
- 3) Задаём машине get_located_interface параметр машине go_state - состояние в которое эта машина переведёт машину 2located_interface_position.
Машинка иттератор get_located_interface
Думаю и так всё ясно:
- 1) задаём нашей машинке 2located_interface_position координаты относительно родителя 0,0;
- 2) меняем машинке родителя на сцену;
- 3) вычитываем координаты относительно сцены;
- 4) записываем в машинку 2located_interface_position полученные координаты;
- 5) переводим машинку 2located_interface_position в указанное состояние ( параметр go_state).