непрозрачность анимации вспышки as3 не влияет на непрозрачность дочерних элементов - PullRequest
1 голос
/ 14 декабря 2011

Я пытаюсь создать своего рода диаграмму дерева, в которой самая последняя ветвь дерева имеет непрозрачность 100%, а каждая повторяющаяся ветвь дерева имеет свою непрозрачность, уменьшенную на 75%.Я применяю изменение непрозрачности к каждому фрагменту ролика, содержащему каждую ветвь - фактические графические элементы (все они нарисованы с помощью команд Flash's graphics.line и graphics.shape) добавляются в этот контейнер как дочерние элементы.Однако изменение непрозрачности контейнера, похоже, не влияет на фактические графические элементы, содержащиеся в нем.Как мне это сделать?Вот примерный план того, что происходит:

Порядок размещения:

var circle:Shape = new Shape();
var circleClip:MovieClip = new MovieClip();
var childHolder:MovieClip = new MovieClip();
var circleHolder:MovieClip = new MovieClip();
circleClip.addChild(circle);
circleHolder.addChildAt(circleClip,0);
circleHolder.addChildAt(childHolder,1);

При щелчке по кольцу круга, я создаю новую ветку, прикрепляю ее к дочернему держателю и перемещаю

it, drawing a line to wherever it moves to:
childHolder.addChild(newCircle);
newCircle.moveTo(x,y);

Теперь я хочу уменьшить непрозрачность родительского элемента.Я делаю это с помощью такого рода уравнения:

private function fadeParents(circleHolderRef)
{
    var curCircleHolderRef = circleHolderRef;
    var curOpacity = 1;
    var circleDepth = circleHolderRef.depthFromStart;

    for (var i=0;i<circleDepth;i++)
    {
        var childHolderRef = curCircleHolderRef.parent;
        var parentCircleHolderRef = childHolderRef.parent;
        curOpacity = curOpacity * .75;
        trace (i + "| opacity: " + curOpacity);
        TweenMax.to(parentCircleHolderRef,.5,{opacity: curOpacity});
        curCircleHolderRef = parentCircleHolderRef;
    }

    //trace (circleHolderRef.depthFromStart)
}

, но это не имеет никакого эффекта.

1 Ответ

1 голос
/ 14 декабря 2011

Вы анимируете свойство с именем opacity, это должно привести к ошибкам, прозрачность MovieClip установлена ​​в alpha:

 TweenMax.to(parentCircleHolderRef, .5, { alpha: curOpacity} );
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...