PDA

Просмотр полной версии : Глубина клипов


vitalian
30.03.2008, 16:03
Привет уважаемому All'у.

Долгое время считал, что глубина - штука абсолютная и два клипа на одной глубине существовать не могут.
Однако надысь столкнулся с любопытным явлением:

var Shar1:MovieClip = this.attachMovie("sphere", "sphere_"+1, 1);
Shar1._x = Shar1._y = 50;
var Shar2:MovieClip = this.attachMovie("sphere", "sphere_"+2, 2);
Shar2._x = Shar2._y = 100;
var Shar3:MovieClip = this["Shar2"].attachMovie("sphere", "sphere_"+3, 1);
Shar3._x = Shar3._y = 150;
trace(this["Shar1"].getDepth());
trace(this["Shar2"].getDepth());
trace(this["Shar3"].getDepth());


Два клипа, Shar1 и Shar3, лежат на глубине "1", только один - на _root, а другой на Shar2.
Получается, что вытеснение имеет место лишь для тех клипов, которые вдобавок к глубине имеют общее основание?..

crc
30.03.2008, 17:22
конечно, откуда взятся "вытеснению", если объекты "лежат" в разных местах:)

vitalian
30.03.2008, 18:24
ну вот так думалось...
нигде ведь не пишется, что она не просто сама себе depth, а конкретно parentMovieClip.depth.

Я стоко времени пугался проектирования сложных проектов, где схема глубин должна быть железно продумана до написания первой строчки кода. А тут, извольте; для каждого набора объектов делаешь свой мувик, и в нем можно опять с нуля...

Molecula
31.03.2008, 11:07
Можно писать не:
trace(this["Shar1"].getDepth());
а:
trace(Shar1.getDepth());

vitalian
31.03.2008, 12:37
Molecula
хм-м.. благодарю) не знал. Юзал eval, но он не всегда срабатывает.