Carl,
Unfortunately I can't post a fla because my application is web-based. Here is the link that I use for debugging my application
http://129.252.37.169:8400/samples/flowmap-debug/index.html
This application animates migration of over 4000 individuals from 9 families. There is a timeline for each individual and a parent timeline for each family. The graphics are drawn on the map by customized graphics layer and symbol classes that can embed all the timeline animations. When each timeline finishes the lines turn into blue. If you play the animation and reverse using the buttons in the widget, you will be able to observe the issue.
Below are the methods that I use to draw line animations
private function drawLineForReverse():void
{
// trace(tl.currentTime);
lineSprite.graphics.clear();
nodeSprite.graphics.clear();
//start new lineSprite at first point;
lineSprite.graphics.lineStyle(2,0xDD1C77,0.2);
lineSprite.graphics.moveTo(animationStartPoint.x, animationStartPoint.y);
//loop through and connect all the points
for (var i:Number = 0; i< pointCount; i++) {
var point:Point = pointsArray[i] as Point;
nodeSprite.graphics.beginFill(0xFF9933,0.4);
nodeSprite.graphics.drawCircle(point.x,point.y,5);
nodeSprite.graphics.endFill();
lineSprite.graphics.lineTo(point.x, point.y);
//don't draw the last segment when reversing
if (tl.reversed) {
if (i == pointCount - 1) {
break;
}
}
}
//draw a line to where the mc is
lineSprite.graphics.lineTo(mc.x, mc.y);
nodeSprite.graphics.beginFill(0xDD1C77,1);
nodeSprite.graphics.drawCircle(mc.x,mc.y,5);
nodeSprite.graphics.endFill();
}
private function drawCompletedGraphics():void{
// trace(tl.currentTime);
lineSprite.graphics.clear();
nodeSprite.graphics.clear();
//start new lineSprite at first point;
lineSprite.graphics.lineStyle(2,0x0033FF,0.1);
lineSprite.graphics.moveTo(animationStartPoint.x, animationStartPoint.y);
//loop through and connect all the points
for (var i:Number = 1; i< pointsArray.length; i++) {
var point:Point = pointsArray[i] as Point;
nodeSprite.graphics.beginFill(0x0033FF,0.1);
nodeSprite.graphics.drawCircle(point.x,point.y,4);
nodeSprite.graphics.endFill();
lineSprite.graphics.lineTo(point.x, point.y);
}
}
Meanwhile, I will try to replicate the issue with a simpler tween animation.
Best,
Caglar