M@rtinMedlem sedan dec. 19992 085 inlägg Finns det någon motsvarighet till andra programmeringsspråks putpixel() i actionscript?
Just nu ritar jag pixlar med hjälp av lineTo från (0,0) till (0,1) typ men det blir inte så vidare snyggt och det ser ut att bli antialias och rundningar på pixlarna.
Finns det något sätt att lösa detta? Har sökt en del men bara hittat lineTo-lösningar.
Flashplayer 8, som för närvarande finns i publik beta, innehåller nya funktioner för att arbeta med pixlar. API:et liknar mycket det som finns i senare versioner av Director, tror till och med att det är samma utvecklare som implementerat dem.
Här finns en listning på metoderna:
http://www.pasz.com/articles/flash8ASDoc/
Mer info om nyheterna i FP8:
http://osflash.org/doku.php?id=flashcoders:undocumented:flash8#flash_8
Mmm det är ju player 8 det. I Player 6 eller 7 så finns det två alternativ. Antingen att rita en 1-pixels linje som du gör. eller så använda ett filmklipp med en pixel i som du importerar direkt från biblioteket med attachMovie().
/Mirandir
Japp, det är Flashplayer 8 och det dröjer ju ett tag innan man kan använda det kommersiellt, tyvärr.
Att använda filmklipp med en pixel som man sedan importerar till scenen kommer slöa ner rejält när det handlar om många pixlar.
Drawing API, som kom i Flashplayer 6, ritar vektordata. Det är därför det blir antialias när man använder lineTo(). En variant som kanske skulle funka är att använda fyllningar istället. Något liknande det här:
this.createEmptyMovieClip("mc", this.getNextHighestDepth());
mc.beginFill(0xFF0000);
mc.moveTo(10, 10);
mc.lineTo(11, 10);
mc.lineTo(11, 11);
mc.lineTo(10, 11);
mc.lineTo(10, 10);
mc.endFill();
Eller är jag helt fel ute nu?
M@rtinMedlem sedan dec. 19992 085 inlägg Jag ser med spänning fram emot flash 8 men jag måste tyvärr fixa en lösning på detta innan dess.
Jag har gjort en version med ett movieclip för varje pixel. Problemet med det är som sagt att det blir ganska segt så därför letar jag efter en annan lösning. Jag måste kunna rita ut 120*80=9600pixlar vilket är möjligt med ett filmklipp för varje men det tar en stund och man får varningar om att det tar för lång tid att exekvera.
Fyllningssättet fungerade bra med 1 pixel och fungerade även med 9600 pixlar men det tog ännu längre tid att exekvera än med filmklipp för varje så det är nog tyvärr inte ett alternativ.
Jag får nog använda filklippsvarianten så länge tills flash 8 blir stabil. Då är frågan hur man delar upp laddandet så att man inte får varningar samt visar nån slags laddningsbild samtidigt men jag tror jag startar en ny tråd om det.
Tack för svaren!