kolmapäev, 9. september 2009

Ülesanne: Eluka joonistamine

Kodus on sul ette valmistatud pilt elukast, mis koosneb lihtsatest geomeetrilistest kujunditest: ringid, ristkülikud, ellipisid. See pilt tuleb nüüd Action Scriptis esitada.

Üheks abi otsimise kohaks on artikkel "Basics of using the drawing API" Adobe veebist.

Vaatame järgnevalt mõningaid käsklusi, mida sul selle ülesande lahendamiseks vaja läheb. Käsklused pärinevad klassist Graphics, mis kuulub pakki flash.display ehk siis flash.display.Graphics. Tegemist on klassiga, mis pakub meetodeid vektorgraafikas joonistamiseks. Klassi võib vaadata kui korraldustele alluvat paberit. Näiteks korraldus clear puhastab paberi sinna joonistatust.
  • lineStyle(...) - selle meetodi abil on võimalik täpsustada teiste meetodite poolt tõmmatava joone väljanägemist. Täpseid argumente vaata Adobe leheküljelt.
  • beginFill(color, alpha = 1.0) - määrab järgnevalt väljakutsutavate joonistamismeetodite poolt kasutatava ühevärvilise täidise.
  • endFill() - lõpetab meetodiga beginFill määratud täidise mõjuala.
  • moveTo(x, y) - liigutab joonistamispea x-y teljestikus argumentidega määratud punkti.
  • lineTo(x, y) - tõmbab joone joonistamispea asukohast argumentidega määratud punkti.
  • drawRect(x, y, width, height) - joonistab etteantud laiuse ja kõrgusega ristküliku, mille ülemine vasak nurk asub punktis (x, y).
  • drawCircle(x, y, radius) - joonistab etteantud raadiusega ringi, mille keskpunkt asub punktis (x,y).
  • drawEllipse(x, y, width, height) - joonistab etteantud laiuse ja kõrgusega ellipsi keskpunktiga (x, y).
  • clear() - puhastab paberi joonistatust ja tühistab kõige joone ja täidise seaded. 

Näide:
  1.  graphics.lineStyle(1, 0x000000); //Ühe piksli laiune must joon
  2.  graphics.beginFill(0x969696); //Hall täidisvärv
  3.  graphics.drawRect(100, 100, 20, 100);
  4.  graphics.endFill();
  5.  graphics.beginFill(0xFFFFFF); //Valge täidisvärv
  6.  graphics.drawCircle(110, 85, 30);
  7.  graphics.endFill();
  8.  graphics.beginFill(0x000000); //Must täidisvärv
  9.  graphics.drawEllipse(83, 70, 14, 30);
  10.  graphics.drawEllipse(123, 70, 14, 30);
  11.  graphics.endFill(); 
  12.  graphics.moveTo(100, 200);
  13.  graphics.lineTo(90, 210);
  14.  graphics.moveTo(120, 200);
  15.  graphics.lineTo(130, 210);

Kommentaare ei ole:

Postita kommentaar