Просмотр полной версии : Движение по направляющим
Задача: есть карта движения жд вагонов по территории завода.
от одного объекта к другому вагон (мувик) перемещаются по определенному пути (направляющий слой).
Объекты соединены между собой путями. Иногда от объекта А к объекту Б движение должно проходить через промежуточный объект С. Т.е. А->C а потом С->В
Вопрос: как с помощью АС привязать определенный мувик к определенному пути (направляющему слою), чтобы можно было вначале пройти по пути А->C, а потом перевести мувик на путь С->В?
почему сложно сделать направляющую ACB?
или несколько мувиков
хотя понял меньше половины :)
мувиков (вагонов) может быть около сотни, объектов между которыми происходят движения 20 штук. Если соединять каждый объект со всеми остальными отдельным путем, то таких путей будет около 400. Это не совсем удобно. Вот пример карты:
16446
конкретизирую вопрос: есть 100 мувиков и 20 направляющих слоев.
как с помощью АС указать определенному мувику пройти по определенному пути?
все данные о расположении и перемещении вагонов тянутся из базы и нужно в реальном времени отображать все движения вагонов на карте.
никак, с помощью АС можно обойтись без
направляющих слоев, самому задав путь
и движения мувиков(вагонов) программно
движение по прямой это еще можно, а вот если по кривой линии?
очень сложно будет описать траекторию движения.
поищи в поиске, тут недавно про это обсуждалось
http://flasher.ru/forum/showthread.php?t=91257&highlight=%E4%E2%E8%E6%E5%ED%E8%E5
Вот несколько реализованных пректов
1.http://www.eyeonisrael.com/ ( увеличь 8-й квадрат и посмотри движение например поезда по ж/д ). Это анимация.
2.далее несколько проектов по определению путей перемещения
http://www.moscowout.ru/metro/
3.http://metro.mainmaps.com
4.http://metro.mainmaps.com/london
5.http://centremap.spb.ru
Используется теория графов. Желательно владеть курсом Дискретной математики.
подскажите еще как узнать, что Tween выполнился?
import mx.transitions.Tween;
var tween:Tween = new Tween (m1, "_x", mx.transitions.easing.None.easeNone, 0, 100, 20, false);
var tween:Tween = new Tween (m1, "_y", mx.transitions.easing.None.easeNone, 0, 300, 20, false);
после выполнения этого блока мне нужно запустить следующий.
Ну во первых, имена твинов должны быть разные. А во вторых, можно подписаться на событие onMotionFinished.
Работает на vBulletin ® версия 3.7.3. Copyright ©2000-2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Copyright © 1999-2008 Flasher.ru. All rights reserved.