Slikarstvo Flash CS3: realnom vremenu izbrisati alat
Ponedjeljak, 11 Veljača 2008 Građevinska šifre dali u stvaranju Boja Flash CS3, i prikazuju male promjene, koje mogu značajno poboljšati instrument na "izbriši". Dodavanjem obliku nije vidljiva, možete ga koristiti kao "plan" koji će se prikazivati na draw () mod od spajanja "izbriši". Kao što je prikazano u primjeru u nastavku, nakon što su dizajnirana nešto, držite tipku CTRL i efekt "otkaza" je sada u realnom vremenu.
The code je kao što slijedi - izvor:
- . MouseEvent ; uvoz flash. događanja. MouseEvent;
- . BitmapData ; uvoz flash. prikaz. BitmapData;
- . Bitmap ; uvoz flash. prikaz. Bitmap;
- . GradientType ; uvoz flash. prikaz. GradientType;
- / /
- . Matrix ; uvoz flash. geom. Matrix;
- / /
- = false ; var md: boolean = false;
- / /
- Sprite ( ) ; var event_spr: Sprite = new Sprite ();
- ; addChild (event_spr);
- / /
- = event_spr. stage . stageWidth ; var area_width: Number = event_spr. stage. stageWidth;
- = event_spr. stage . stageHeight - 32 ; var area_height: Number = event_spr. stage. stageHeight - 32;
- / /
- = GradientType. LINEAR ; var fillType: String = GradientType. LINEARNI;
- = [ 0xFF0000, 0x00FF00, 0x0000ff ] ; var boje: Array = [0xFF0000, 0x00FF00, 0x0000ff];
- = [ 1 , 1 , 1 ] ; var Alphama: Array = [1, 1, 1];
- = [ 0 , 128 , 255 ] ; var Pokazivači: Array = [0, 128, 255];
- = SpreadMethod. PAD ; var spreadMethod: String = SpreadMethod. PAD;
- Matrix ( ) ; var matrica: matrix = new Matrica ();
- area_width, area_height, 1 , 0 , 0 ) ; matrica. createGradientBox (area_width, area_height, 1, 0, 0);
- / /
- event_spr. graphics ) { s (event_spr. grafika) (
- fillType,colors,alphas,ratios,matrix,spreadMethod ) ; beginGradientFill (fillType, boje, Alphama, Pokazivači, matrica, spreadMethod);
- , 0 ,area_width, area_height ) ; drawRect (0, 0, area_width, area_height);
- ; endFill ();
- )
- / / Boja događaj
- MouseEvent. MOUSE_DOWN , _onMouseDown ) ; event_spr. addEventListener (MouseEvent. MOUSE_DOWN, _onMouseDown);
- MouseEvent. MOUSE_MOVE , _onMouseMove ) ; event_spr. addEventListener (MouseEvent. MOUSE_MOVE, _onMouseMove);
- MouseEvent. MOUSE_UP , _onMouseUp ) ; event_spr. addEventListener (MouseEvent. MOUSE_UP, _onMouseUp);
- MouseEvent. MOUSE_OUT , _onMouseUp ) ; event_spr. addEventListener (MouseEvent. MOUSE_OUT, _onMouseUp);
- / /
- BitmapData ( event_spr. width ,event_spr. height , true , 0 ) ; var bmpd: BitmapData = new BitmapData (event_spr. širina, event_spr. visine, true, 0);
- Bitmap ( bmpd ) ; var bmp: Bitmap = new Bitmap (bmpd);
- ; addChild (BMP);
- / /
- / / Temporary Oblik
- Shape ( ) ; var draw_shape: Oblik = new Shape ();
- ; addChild (draw_shape);
- / /
- / / Shape, nije vidljiva, koristi se za "ukidanje"
- Shape ( ) ; var erase_shape: Oblik = new Shape ();
- / /
- e :MouseEvent ) : void { _onMouseDown function (e: MouseEvent): void (
- ) ; debug ( "_onMouseDown");
- ( 10 , 0xffffff, 1 ) ; draw_shape. grafika. lineStyle (10, 0xffffff, 1);
- ( 20 , 0xffffff, 1 ) ; erase_shape. grafika. lineStyle (20, 0xffffff, 1);
- ( e . localX , e . localY ) ; draw_shape. grafika. moveTo (and. localX, i. localY);
- ( e . localX , e . localY ) ; erase_shape. grafika. moveTo (and. localX, i. localY);
- MD = true;
- )
- / /
- e :MouseEvent ) : void { _onMouseUp function (e: MouseEvent): void (
- MD = false;
- ( draw_shape ) ; bmp. bitmapData. draw (draw_shape);
- ( ) ; draw_shape. grafika. vedro ();
- ( ) ; erase_shape. grafika. vedro ();
- )
- / /
- e :MouseEvent ) : void { _onMouseMove function (e: MouseEvent): void (
- ) ; debug ( "_onMouseMove");
- md && ! e . ctrlKey ) { ako (MD & &!. ctrlKey) (
- ( e . localX , e . localY ) ; draw_shape. grafika. lineTo (and. localX, i. localY);
- ( md && e . ctrlKey ) { ) Else if (MD & & i. CtrlKey) (
- ( e . localX , e . localY ) ; erase_shape. grafika. lineTo (and. localX, i. localY);
- ( erase_shape, null , null , "erase" ) ; bmp. bitmapData. draw (erase_shape, null, null, "izbrisati");
- )
- )
- / /
- v: String ) : void { ispravljanje funkcija (v: String): void (
- = new Date ( ) ; var d: Date = new Date ();
- d. getMinutes ( ) + ":" +d. getSeconds ( ) + ":" +d. getMilliseconds ( ) + ": " +v ) ; trag (d. getMinutes () + ":" + d. getSeconds () + ":" + d. getMilliseconds () + ":" + v);
- )
Dodana je jedan novi oblik, nije vidljiva erase_shape (nije obavljeno, bilo koje addChild ()):
- ...
- / / Shape, nije vidljiva, koristi se za "ukidanje"
- Shape ( ) ; var erase_shape: Oblik = new Shape ();
Na komad od kod da pokuša privući uvedeno je za kontrolu i kontrolu ključem, kada je postao, u pitanju je upravo u obliku erase_shape i kopirati na Bitmap:
- ....
- . lineTo ( e . localX , e . localY ) ; erase_shape. grafika. lineTo (and. localX, i. localY);
- ( erase_shape, null , null , "erase" ) ; bmp. bitmapData. draw (erase_shape, null, null, "izbrisati");
See also ...
- 27.08.08: Vrlo kratke isječke: send e-pošte u HTML s PHP (0)
- 26.08.08: Skypemote.com: Recite sa emocije (3)
- 21.08.08: ABS-WP: dodati svoj blog na pretraživanje preglednik (7)
- 20.08.08: Simple harmonika sa klasa USimpleTabStrip (0)
- 19.08.08: nagli pokret i Pramen (2)


















Ostavite komentar