![]() |
|
||||||||||
|
|||||||
|
|
« Предыдущая тема | Следующая тема » |
| Опции темы | Опции просмотра |
|
![]() |
![]() |
|
|||||
|
Всё очень просто, нужно красную стрелку привязать по х и у к тёмно красной точке, фишка в том, что точка находиться внутри чёрной стрелки, которая непрерывно вращаеться.
Мудрил мудрил, так нечего хорошего и не получилось, помогите кто сможет, исходник в архивчике. Нащёт придыдуще созданой темы, подзабыл эт правило, небантье пож-ста. ![]()
__________________
Дети не должны знать о своих родителях |
|
|||||
|
Цитата:
// _x _root.RedArrow._x.localToGlobal(_root.RedArrow._x=_root.blackArrow.darkredPoint._x); // _y _root.RedArrow._y.localToGlobal(_root.RedArrow._y=_root.blackArrow.darkredPoint._y); => неправильно использую глобал, в хелпе было лиш пара слов о "_global", и как мне стало ясно, эта штука делает обьект/переменную глобальной, тоесть к ней можно будет обращаться из любоваа уголка swf, но как применить её в этом случае ? localToGlobal() для меня новое, не ругайте сильно. ---------------- Вот нашол похожий пример, но в ней нет овета http://www.flasher.ru/forum/showthre...ToGlobal%28%29 Еслиб не угол поворота, выщитать кординату былобы предельно просто: Хотя можно и сделать так, а проблему с углом поворота рещить следущим: повернуть красную стрелку на тот же угол поворота, НО с центром атносительно чёрной стрелки, блин а это уже попахивает всякими радианами, синусами, косинусами и PI/180, ненадо было математику прогуливать ![]() Вощем говоря простым языком, нужен скрипт, который бы поворачивал обьект по ротаций, но относительно центра, который будет указан в соответствующих переменных, и вся проблема будет решена ! Уверен, что подобный вопрос будет мучить ещё немало народу. Помогите плз. Добавлено через 3 часа 56 минут Пока писал на форум до самого дошло как это можно сделать, вопщем если каму это понадобиться вот код: // на сцене 2 клипа: // 1-ый с названием Fire и 2-ой с названием bahna, также внутри второго имееться клип FirePoint // САМА ФУН-ИЯ function getXandY() { // пифагор dlina=Math.sqrt(((targetClip._y*targetClip._y)+(targetClip._x*targetClip._x))); // ugol delta_x = -targetClip._x; delta_y = -targetClip._y; ugol = (-Math.atan2(delta_x, delta_y)/(Math.PI/180))-90; //raschet resultX=targetClipRoditel._x+ (dlina*Math.cos((targetClipRoditel._rotation+ugol)*(Math.PI/180))); resultY =targetClipRoditel._y+ (dlina*Math.sin((targetClipRoditel._rotation+ugol)*(Math.PI/180))); resultRotation=targetClipRoditel._rotation; } // // // Теперь пробуем её использовать // Задаём ей цель targetClipRoditel = _root["bahna"]; targetClip=targetClipRoditel["FirePoint"]; // Врубаем фун-ию getXandY(); // Функция выводит нам нужные кординаты, которые в последущем можно свободно использовать, например так: _root.Fire._x=resultX; _root.Fire._y=resultY; _root.Fire._rotation=resultRotation; ![]()
__________________
Дети не должны знать о своих родителях Последний раз редактировалось Tails; 23.02.2009 в 00:46. |
![]() |
![]() |
Часовой пояс GMT +4, время: 23:15. |
|
|
« Предыдущая тема | Следующая тема » |
| Опции темы | |
| Опции просмотра | |
|
|