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