Wackee Skrevet 25. mars 2010 Del Skrevet 25. mars 2010 Hei Oppgava mi er som følger: Forandre sirkel funksjonen slik at annenhver sirkel får forskjellig farge. La den andre fargen også være en parameter i funksjonen. Dette er det jeg har fra før: function sirkler(x:int, y:int, radius:Number, antall:uint, farge:Number) { var radiusTrekk:Number = radius/antall; var teller:int = 0; alpha = 0; while(teller < antall) { alpha = alpha + 0.1; graphics.lineStyle(2,farge,alpha); graphics.drawCircle(x, y, radius); radius = radius - radiusTrekk; teller++; } } sirkler(100,100,100,10,099131); Og detta har eg gjort for å prøve å få annenvher farge: function sirkler(x:int, y:int, radius:Number, antall:uint, farge:Number, altfarge:Number) { var radiusTrekk:Number = radius/antall; var teller:int = 0; alpha = 0; var color if((teller % 2) == 0) { color = farge; } else { color = altfarge; } while(teller < antall) { alpha = alpha + 0.1; graphics.lineStyle(2,color,alpha); graphics.drawCircle(x, y, radius); radius = radius - radiusTrekk; teller++; } } sirkler(100,100,100,10,099131,861313); Men eg har ikkje peiling på kvifor det ikkje fungerar. Er det nokon som veit kvifor? Lenke til kommentar
maxM Skrevet 25. mars 2010 Del Skrevet 25. mars 2010 (endret) function sirkler(x:int, y:int, radius:Number, antall:uint, farge:Number, altfarge:Number) { var radiusTrekk:Number = radius/antall; var teller:int = 0; alpha = 0; var color while(teller < antall) { alpha = alpha + 0.1; if((teller % 2) == 0) { color = farge; graphics.beginFill(color); } else { color = altfarge; graphics.beginFill(color); } graphics.drawCircle(x, y, radius); graphics.endFill(); radius = radius - radiusTrekk; teller++; } } sirkler(100,100,100,10,099131,861313); Her har du kode som fungerer Som du ser så har jeg kastet ut lineSyle og puttet inn beginFill. Nå er det altså ingen outline, bare fill i sirkelene dine. if() har jeg også puttet inn i loopen while. Det er fordi det er i denne delen av koden at sirkelene blir laget, og det er denne delen av koden som kjøres om igjen så mange ganger som du angir i den fjerde variabelen antall. function sirkler(x:int, y:int, radius:Number, antall:uint, farge:Number) { var radiusTrekk:Number = radius/antall; var teller:int = 0; alpha = 0; Denne delen av koden blir brukt bare en gang, siden du kaller funksjonen sirkler() bare en gang. Endret 25. mars 2010 av maxM Lenke til kommentar
Anbefalte innlegg
Opprett en konto eller logg inn for å kommentere
Du må være et medlem for å kunne skrive en kommentar
Opprett konto
Det er enkelt å melde seg inn for å starte en ny konto!
Start en kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå