| Сортировка глубины в 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 не работал так как содержит в себе вообще все обьекты сцены (в том числе рисованный фон и тп)
 |  |  |  |  |