Avatar billede reptil Nybegynder
16. januar 2002 - 14:35 Der er 5 kommentarer og
1 løsning

scripting af orbit movement

hallllløj allesammen,,,
Hvis der er en af jer der har en ide til hvordan jeg scripter en kugle der roterer rundt om sin egen akse, så ville det være supercool, hvis I kunne hjælpe mig....Jeg har på fornemmelse der indgår noget sinus/cosinus og jeg skal gi\' dig ska\' jeg,,Anyway jeg er ikke den store matematiker, so please help me !!!!! hilsen den talblinde :)))
Avatar billede mat Nybegynder
16. januar 2002 - 14:56 #1
kan du ikke placere grafikken i dit movieclip off-centre og rotere den om sit eget midtpunkt:

onClipEvent (enterFrame) {
_rotation += 5;
}
Avatar billede reptil Nybegynder
16. januar 2002 - 15:07 #2
Jo, men der ligger umiddelbart lidt mere scripting bag,, her tænker jeg på swap depths,  når kuglen f.eks. drejer rundt om planeten ???
og hvordan får jeg den til at køre i en oval bane ??
Avatar billede barklund Nybegynder
16. januar 2002 - 15:44 #3
Hvis den skal rotere om sig egen akse, så drejer den altså ikke rundt om et andet objekt, men rundt om sig selv - fx en jordklode, der drejer, så man kan se afrika, asien, amerika og igen afrika osv...

Du ønsker en kugle, der roterer om en anden akse end sin egen - fx jorden om solen. Det, der skal ske, er jo 3Dimensionelt, da den både skal bevæge sig rundt om solen, men også skal skaleres, så den er lille, når den forsvinder bag solen, og er stor, når den passerer foran... Ikke sandt?

Men en simpel oval bane er blot:

onClipEvent(load) {
    speed = 10;
    height = 50; // højde på ellipse
    width = 70; // bredde af ellipse
    start_x = _x;
    start_y = _y;
}
onClipEvent(enterFrame) {
    t++;
    _x = start_x+width*Math.cos(t/speed);
    _y = start_y+heigth*Math.sin(t/speed);
}

Så bestemmer width og height parametrene for ellipsens størrelse, mens speed bestemmer kuglens rotationshastighed. Skal speed direkte angive omløbstiden skal det istedet hedde:

_x = start_x+width*Math.cos(t*2*Math.PI/speed);
_y = start_y+heigth*Math.sin(t*2*Math.PI/speed);

Speed = 1 beskriver da en bevægelse med kun et punkt på ellipsen, speed = 100, beskriver 100 punkter på ellipsen.

Skal det være helt korrekt, så skal solen jo være placeret i denne ellipses brændpunkt. Men er du med så langt nu? Så kan vi senere implementere scale og swapDepths...

/Barklund
Avatar billede reptil Nybegynder
16. januar 2002 - 15:57 #4
Helt korrekt, tusinde tak ,,det var lige det jeg ledte efter...fantastisk forklaring :), så mangler jeg bare lige scale og swapDepths ? Hvis du har tid selvfølgelig :O)
Avatar billede lingoman Nybegynder
16. januar 2002 - 16:02 #5
Du er vist kommet til at acceptere dit eget indlæg... det efterlader ikke særlig mange point til dem der gerne vil hjælpe dig :(
Avatar billede barklund Nybegynder
16. januar 2002 - 16:04 #6
Lav lige et nyt spørgsmål for det der giver ikke mere hjælp! :o)
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