Hallo,
i wrote this function to prozess a singel substraction and store the output in an array. But the output i got is just crazy, i have debug that thing for half an hour now and i don`t get it. It’s suposed to be simple ARRRR!!!
Please have a look on this.
[CODE]ANIMATION.MOVIE.buildMovie = function(aniObject) {
BUG.feed(‘calling ANIMATION.MOVIE.buildMovie’,2);
aniObject.movie = new Array(aniObject.startColor);
BUG.feed(‘movie: ‘+aniObject.movie,3);
var workingColor = aniObject.startColor;
BUG.feed(‘workingColor:’+workingColor,3);
for (var f = 1; f <= aniObject.frames; f++) {
for (var c = 0; c < workingColor.length; c++) {
workingColor[c] -= aniObject.changesPerFrame[c];
BUG.feed(‘workingColor: ‘+c+’ / ‘+workingColor[c],3);
}
BUG.feed(‘workingColor: ‘+workingColor,3);
aniObject.movie.push(workingColor);
BUG.feed(‘movie after: ‘+aniObject.movie,3);
BUG.feed(‘next round’,2);
}
And this is the output:
[CODE]level 2: calling ANIMATION.MOVIE.color2rgb
level 3: targetColor: 125,125,124
level 2: calling ANIMATION.MOVIE.difference
level 3: changesPerFrame: -20.833333333333332,-20.833333333333332,-20.666666666666668
level 2: calling ANIMATION.MOVIE.buildFrame
level 3: movie: 0,0,0
level 3: workingColor: 0,0,0
level 3: workingColor: 0 / 20.833333333333332
level 3: workingColor: 1 / 20.833333333333332
level 3: workingColor: 2 / 20.666666666666668
level 3: workingColor: 20.833333333333332,20.833333333333332,20.666666666666668
level 3: movie after: 20.833333333333332,20.833333333333332,20.666666666666668,20.833333333333332,20.833333333333332,20.666666666666668
level 2: next round
level 3: workingColor: 0 / 41.666666666666664
level 3: workingColor: 1 / 41.666666666666664
level 3: workingColor: 2 / 41.333333333333336
level 3: workingColor: 41.666666666666664,41.666666666666664,41.333333333333336
level 3: movie after: 41.666666666666664,41.666666666666664,41.333333333333336,41.666666666666664,41.666666666666664,41.333333333333336,41.666666666666664,41.666666666666664,41.333333333333336
level 2: next round
level 3: workingColor: 0 / 62.5
level 3: workingColor: 1 / 62.5
level 3: workingColor: 2 / 62
level 3: workingColor: 62.5,62.5,62
level 3: movie after: 62.5,62.5,62,62.5,62.5,62,62.5,62.5,62,62.5,62.5,62
level 2: next round
level 3: workingColor: 0 / 83.33333333333333
level 3: workingColor: 1 / 83.33333333333333
level 3: workingColor: 2 / 82.66666666666667
level 3: workingColor: 83.33333333333333,83.33333333333333,82.66666666666667
level 3: movie after: 83.33333333333333,83.33333333333333,82.66666666666667,83.33333333333333,83.33333333333333,82.66666666666667,83.33333333333333,83.33333333333333,82.66666666666667,83.33333333333333,83.33333333333333,82.66666666666667,83.33333333333333,83.33333333333333,82.66666666666667
level 2: next round
level 3: workingColor: 0 / 104.16666666666666
level 3: workingColor: 1 / 104.16666666666666
level 3: workingColor: 2 / 103.33333333333334
level 3: workingColor: 104.16666666666666,104.16666666666666,103.33333333333334
level 3: movie after: 104.16666666666666,104.16666666666666,103.33333333333334,104.16666666666666,104.16666666666666,103.33333333333334,104.16666666666666,104.16666666666666,103.33333333333334,104.16666666666666,104.16666666666666,103.33333333333334,104.16666666666666,104.16666666666666,103.33333333333334,104.16666666666666,104.16666666666666,103.33333333333334
level 2: next round
level 3: workingColor: 0 / 124.99999999999999
level 3: workingColor: 1 / 124.99999999999999
level 3: workingColor: 2 / 124.00000000000001
level 3: workingColor: 124.99999999999999,124.99999999999999,124.00000000000001
level 3: movie after: 124.99999999999999,124.99999999999999,124.00000000000001,124.99999999999999,124.99999999999999,124.00000000000001,124.99999999999999,124.99999999999999,124.00000000000001,124.99999999999999,124.99999999999999,124.00000000000001,124.99999999999999,124.99999999999999,124.00000000000001,124.99999999999999,124.99999999999999,124.00000000000001,124.99999999999999,124.99999999999999,124.00000000000001
level 2: next round
As you can see with every aniObject.movie.push() everything in the array is replaced with the new values… whats this???
Please look into this, normally this shouldn’t be happening.
Greets
Jens