Avatar billede mobius6 Juniormester
27. december 2004 - 00:24 Der er 8 kommentarer og
1 løsning

virker i P6 men ikke P7, hvorfor?

hej E's

er der dr nogen der kan fortælle mig hvorfor dette (udemærkede) script virker perfekt i flashplayer 6 export med ikke virker ved export til Player 7 ?
(halen forsvinder, sidste del af scriptet virker dog altid)

og hvordan kunne det evt. optimeres generelt (stammer fra en open source kode)



onClipEvent (enterFrame) {
    this.mandala._rotation += 6; // rotation thrust speed
    if (this._alpha<100) {// alpha fade-in
    this._alpha += 4;
    }
}
onClipEvent (load) {
    this.stop();
    this.mandala.stop();
    this._alpha = 0;
    radius = 220;// change the radius here or simply resize the perpetuum mobile movieClip 
    step = 5;// step accuracy of drawing the pieces of circle with alpha effect. A higher value here is good on slow machines but U lose quality
    circle_pi = Math.PI/180;
    this._yscale = 20;// scale of the 3D screw. 100 = 2D
    mxc = 0x0099cc;// color of the arrow
    mlen = 270;// length in degree
    this.createEmptyMovieClip("mandala", 100);// this nested movie is not needed by a 2D only arrow
    for (ratio=0; ratio<mlen; ratio += step) {
        with (this.mandala) {
            mv = (ratio/mlen)*100;// calculate the percentage alpha value decrement
            beginGradientFill("radial", [0x000000, mxc], [0, mv], [radius-20, radius-20], {matrixType:"box", x:-250, y:-250, w:500, h:500, r:0});// here [radius-20, radius-20] determines the stroke
            moveTo(0, 0);
            x = -radius*Math.sin(degree*circle_pi);// circle piece calculation
            y = -radius*Math.cos(degree*circle_pi);
            lineTo(x, y);
            degree -= step;
            x = -radius*Math.sin(degree*circle_pi);
            y = -radius*Math.cos(degree*circle_pi);
            lineTo(x, y);
            endFill();
        }
    }
    with (this.mandala) {// drawing the arrow head (triangle)
        x = -(radius+25);
        y = 0;
        moveTo(x, y);
        beginFill(mxc, 100);
        x = -(radius-55);
        y = 0;
        lineTo(x, y);
        x = -(radius-10);
        y = -50;
        lineTo(x, y);
        endFill();
    }
}



//M6 :)
Avatar billede pyroman Nybegynder
27. december 2004 - 00:56 #1
i load, skal der lige indsættes denne:

degree = 0;

for player 7 tildeler ikke automatisk udeklærede variabler en værdi...

Men så virker den ellers ;)
Avatar billede mobius6 Juniormester
27. december 2004 - 01:16 #2
luksus ;)  works!

smid ein swar pyro, tanx :)
Avatar billede pyroman Nybegynder
27. december 2004 - 01:52 #3
ja! ich will goren das!
Avatar billede barklund Nybegynder
28. december 2004 - 00:29 #4
pyroman, det er ikke _helt_ det, det handler om :)

Det drejer sig om, at udefinerede (eller erklærede men utildelte) variabler er undefined og i FP6 er Number(undefined) === 0 mens det i FP7 er NaN. Derfor skal man altid initialisere sine tal og strenge - undefined bliver nemlig til den tomme streng i FP6, men til "undefined" i FP7.

Bare lige for at få den på plads ;)

--
Morten Barklund
Avatar billede mobius6 Juniormester
28. december 2004 - 13:10 #5
allrightie, Barkman ;)

Har du ellers gode links/tips til steder med veldokumenteret info på dette og ligende "issues" omkring Playerversionering, måske jeg er halv-blind med jeg syntes ikke at kunne finde en fyldestgørende list hos MM ? og jeg sidder titi med gamle ting jeg har bixet sammen helt tilbage i midt 90 som ikke virker i P7 (typisk preloadere og serverkommunikation's stuff).


tak for ovenstående indføring i initialisering af tal/strenge  :)
Avatar billede barklund Nybegynder
28. december 2004 - 13:17 #6
De vigtigste ting:

- case-sensitivity, minVariabel er ikke det samme som minvariabel i FP7 - det var det i FP6

- Number(undefined), Number(null), String(undefined) og Boolean("test") gav i FP6 0, 0, "" og false, mens det i FP7 giver NaN, NaN, "undefined" og true.

Og det er sådan set det. På alle andre punkter opfører FP6 actonscript sig fuldstændig ens i FP6 og FP7.

Hvis du selvfølgelig skal til at konvertere helt tilbage fra FP5, så kommer der andre ting ind over. Og FP4 så er det helt galt.

Men de to førstnævnte punkter vil du blandt andet kunne læse om i den kommende Grundlæggende Programmering i ActionScript, der nok kommer på Globe Forlag til februar.

--
Morten Barklund
Avatar billede mobius6 Juniormester
28. december 2004 - 15:01 #7
ok, på toppen tusind tak!  :)
Avatar billede pyroman Nybegynder
28. december 2004 - 16:54 #8
Jo tak Morty!

Jeg har aldrig nogensinde fået for fortalt eller læst præcist hvordan udefinerede variabler opfører sig, og da de ofte kan give problemer, har jeg bare vænnet mig til at definere alt fra starten, ligesom man ville gøre i (alle) andre sprog...

Men nu ved jeg da lidt - så tak for historien! :)

Glæder mig til at se din bog!
Avatar billede mobius6 Juniormester
28. december 2004 - 17:19 #9
ahh, din egen bog...ja den fattede jeg ikke lige ;)
Sig til hvis du skal have trykt noget billigere (bedre) end det kan gøres i DK
jeg har bla. et lille tryk-broker-firma (EuroGroup.Ltd/euro-print.dk) i Beijing hvor vi laver tryksager til danske virksomheder, jeg kan på stående fod love dig MIN. 20% besparelse ...helt sikkert mere når nu det er Flash ;))

[flot at spamme sit eget spørgsmål, shoot me if you will] ;)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester