Kan du få min spiral til at stå stille i midten af skærmen?
Hej folkensJeg er ved at designe et alternativt interface til et koncept. Lige nu er jeg nået dertil, hvor det er tid at lave en mock-up af hvordan interfacet ca. kommer til at se ud.
Interfacet skal bestå af en spiral, der tegner sig selv udefra og ind.
Jeg har selv fået lavet et "spiral-udkast", ved at låne og tilpasse lidt kode fra nogle andre. Uheldigvis betyder dette, at når jeg tegner min spiral, så bevæger den sig rundt på scenen mens den bliver tegnet.
Mit spørgsmål er: Er der nogen, som kan hjælpe mig med enten at lave en helt ny og bedre spiral, eller er der nogen som kan se på min kode, og komme med forslag til, hvad jeg kan gøre, for at min spiral står stille mens den bliver tegnet. Det skal lige siges, at jeg ønsker, at spiralens center bliver scenens midte.
Her er min kode:
-----------------------------------------------------------------
var centerX = stage.stageWidth/2;
var centerY = stage.stageHeight/2;
var angle:Number= 0;
var radius:Number = 100;
//-----------------Her oprettes firkanten i midten af spiralen---------
var black_mc:MovieClip = new MovieClip();
black_mc.graphics.lineStyle(1,0,100);
black_mc.graphics.drawRect(centerX, centerY, 10, 10);
this.addChild(black_mc);
black_mc.graphics.moveTo(centerX + radius,centerY);
//--------Her er firkanten blevet oprettet og sat ind------------------
//Her opretter jeg og starter en timer, som kører uendeligt og som
//kalder funktionen mover()-------------------------------------------
var timer:Timer = new Timer(50, 0); //timeren kører uendeligt ved 0
timer.addEventListener("timer",
function(event2:TimerEvent):void {
mover();
});
timer.start();
//------------------Her er timeren blevet oprettet og startet---------
//--------Dette er funktionen, som flytter firkanten og som tegner
//--------linjer, der hvor firkanter befinder sig.---------------------
function mover():void{
//trace("tester");
black_mc.x = centerX + radius*Math.cos(angle);
black_mc.y = centerY + radius*Math.sin(angle);
radius -= 0.5;
angle += 0.2;
black_mc.graphics.lineTo(black_mc.x,black_mc.y);
if(radius < 0){
timer.stop();
}
}
//------Her er funktionen slut. Funktionen stopper af sig selv,
//------når spiralens midte er blevet tegnet.--------------------------
-----------------------------------------------------------------
På forhånd tak.
Esben
