Сортировка глубины в as3
|
|
triptix | Дата: Среда, 03 Июля 2013, 11:59 | Сообщение # 1 |
постоянный участник
Сейчас нет на сайте
| Помогите сделать сортировку клипов по глубине, в зависимости от координаты y (удаленности) В интернете нашел такой код Код public function zSort(e:Event):void { personages.sortOn(['y','name'],[Array.NUMERIC,Array.DESCENDING]); var l:int = personages.length; while (l--) { var o:DisplayObject = personages[l] as DisplayObject; if (containerObjects.getChildAt(l) != o) containerObjects.setChildIndex(o, l); } }
оригинал
В примере personages - массив мувиков, болтающихся по сцене, containerObjects - контейнер, в котором они все находятся.
Вопрос: как задать контейнер containerObjects? Откуда он берется? Если при создании чилдов добавлять containerObjects.addChild(players), то в начале класса следует прописать, что такое containerObjects. Как это сделать?
Код var containerObjects:DisplayObjectContainer = new?
Сообщение отредактировал triptix - Среда, 03 Июля 2013, 12:00 |
|
| |
TheAce | Дата: Среда, 03 Июля 2013, 14:11 | Сообщение # 2 |
Pain is Pleasure
Сейчас нет на сайте
| triptix, containerObject - объект, в котором находятся нужные тебе объекты. Гм, походу я говняно объяснил.
В общем и целом, containerObject в большинстве случаев - parent.
The End [3D][TPS]
|
|
| |
triptix | Дата: Среда, 03 Июля 2013, 14:21 | Сообщение # 3 |
постоянный участник
Сейчас нет на сайте
| TheAce, Как его использовать? Где и как объявить, или это не требуется?
|
|
| |
TheAce | Дата: Среда, 03 Июля 2013, 17:43 | Сообщение # 4 |
Pain is Pleasure
Сейчас нет на сайте
| triptix, используй parent.
The End [3D][TPS]
|
|
| |
triptix | Дата: Среда, 03 Июля 2013, 18:20 | Сообщение # 5 |
постоянный участник
Сейчас нет на сайте
| TheAce, как? Напиши хотя бы пример
|
|
| |
shubniggurath | Дата: Среда, 03 Июля 2013, 21:18 | Сообщение # 6 |
www.playnoread.com
Сейчас нет на сайте
| triptix, где находяться твои мувики?
Учу 3д!
|
|
| |
TreinDSM | Дата: Воскресенье, 14 Июля 2013, 09:08 | Сообщение # 7 |
почетный гость
Сейчас нет на сайте
| triptix, containerObjects - это контейнер, в котором находятся сортируемые объекты. Либо пишите имя своего контейнера, либо обращайтесь к свойству parent.
Код var o:DisplayObject = personages[l] as DisplayObject; if (o.parent.getChildAt(l) != o) o.parent.setChildIndex(o, l);
Стоит заметить, что если какой-то из сортируемых объектов не будет добавлен в некоторый контейнер, то будет ошибка. Также, если parent'ы у разных объектов из списка будут разными (объекты лежат в разных контейнерах), то такая сортировка теряет смысл.
|
|
| |
triptix | Дата: Среда, 18 Декабря 2013, 12:40 | Сообщение # 8 |
постоянный участник
Сейчас нет на сайте
| TreinDSM, при parent все мувики исчезают со сцены. Добавлено (18.12.2013, 12:40) --------------------------------------------- Разобрался все таки (спустя столько времени опять понадобилось) Можно контейнер делать как мувик Код var container:MovieClip = new MovieClip() addChild(container) parent не работал так как содержит в себе вообще все обьекты сцены (в том числе рисованный фон и тп)
|
|
| |