Programovanie (1) v C/C++
1-INF-127, ZS 2024/25

Úvod · Pravidlá · Prednášky · Softvér · Testovač
· Kontaktujte nás pomocou e-mailovej adresy E-prg.png (bude odpovedať ten z nás, kto má príslušnú otázku na starosti alebo kto má práve čas).
· Prosíme študentov, aby si pravidelne čítali e-maily na @uniba.sk adrese alebo aby si tieto emaily preposielali na adresu, ktorú pravidelne čítajú.


SVGdraw: Rozdiel medzi revíziami

Z Programovanie
Skočit na navigaci Skočit na vyhledávání
 
(5 medziľahlých úprav od rovnakého používateľa nie je zobrazených.)
Riadok 1: Riadok 1:
=SVGdraw=
 
 
 
Knižnica SVGdraw umožňuje vytvoriť obrázok v SVG formáte a vykresľovať do neho rôzne geometrické útvary, animovať ich a používať korytnačiu grafiku.  
 
Knižnica SVGdraw umožňuje vytvoriť obrázok v SVG formáte a vykresľovať do neho rôzne geometrické útvary, animovať ich a používať korytnačiu grafiku.  
* [[Netbeans|Návod na použitie knižnice v prostredí Netbeans]]
+
* Návod na použitie knižnice [[2018/19_Programovanie_(1)_v_C/C%2B%2B#Pr.C3.A1ca_v_Netbeans_s_grafickou_kni.C5.BEnicou_SVGdraw|v prostredí Netbeans]] a [[Zimný_semester, softvér#Pr.C3.A1ca_v_Kate_s_grafickou_kni.C5.BEnicou_SVGdraw|v prostredí Kate]]
 
* [http://compbio.fmph.uniba.sk/vyuka/prog-data/svgdraw/ Stiahnutie knižnice]
 
* [http://compbio.fmph.uniba.sk/vyuka/prog-data/svgdraw/ Stiahnutie knižnice]
* Príklady programov na [[Prednáška 1|prvej prednáške]]
+
* Príklady programov na [[Prednáška 5|prednáške 5]]
  
 
==Vykresľovanie v SVG formáte==
 
==Vykresľovanie v SVG formáte==
Riadok 13: Riadok 11:
 
* Pomocou príkazov <tt>setLineColor</tt>, <tt>setFillColor</tt>, <tt>setNoFill</tt> nastavujeme farbu čiar a vyfarbovania. Farby zadávame buď troma číslami od 0 do 255 určujúcimi intenzitu červenej, zelenej a modrej, alebo názvom, napr. <tt>"red"</tt> ([http://www.w3.org/TR/SVG/types.html#ColorKeywords zoznam mien farieb]). Príkaz <tt>setFontSize</tt> nastavuje veľkosť písma a <tt>setLineWidth</tt> nastavuje hrúbku čiary.
 
* Pomocou príkazov <tt>setLineColor</tt>, <tt>setFillColor</tt>, <tt>setNoFill</tt> nastavujeme farbu čiar a vyfarbovania. Farby zadávame buď troma číslami od 0 do 255 určujúcimi intenzitu červenej, zelenej a modrej, alebo názvom, napr. <tt>"red"</tt> ([http://www.w3.org/TR/SVG/types.html#ColorKeywords zoznam mien farieb]). Príkaz <tt>setFontSize</tt> nastavuje veľkosť písma a <tt>setLineWidth</tt> nastavuje hrúbku čiary.
 
* Po vykreslení všetkých útvarov ukončíme vykresľovanie príkazom <tt>drawing.finish();</tt>
 
* Po vykreslení všetkých útvarov ukončíme vykresľovanie príkazom <tt>drawing.finish();</tt>
* Po spustení programu by vám mal vzniknúť súbor <tt>hello.svg</tt>, ktorý si môžete prezrieť napríklad v internetovom prehliadači.
+
* Po spustení programu by mal vzniknúť súbor <tt>hello.svg</tt>, ktorý si môžete prezrieť napríklad v internetovom prehliadači.
  
 
==Animácie==
 
==Animácie==

Aktuálna revízia z 15:57, 8. október 2019

Knižnica SVGdraw umožňuje vytvoriť obrázok v SVG formáte a vykresľovať do neho rôzne geometrické útvary, animovať ich a používať korytnačiu grafiku.

Vykresľovanie v SVG formáte

  • Ako prvé musíme vytvoriť súbor s obrázkom v SVG formáte s určitými rozmermi príkazom typu SVGdraw drawing(150, 100, "hello.svg");
  • Do obrázku môžeme kresliť príkazmi drawRectangle, drawEllipse, drawLine, drawText.
  • Ak chceme vykresľovať mnohouholníky, použijeme skupinu príkazov startPolygon, addPolygonPoint a drawPolygon. Pomocou startPolygon a addPolygonPoint postupne vymenujeme vrcholy a pomocou drawPolygon mnohouholník uzavrieme a vykreslíme.
  • Pomocou príkazov setLineColor, setFillColor, setNoFill nastavujeme farbu čiar a vyfarbovania. Farby zadávame buď troma číslami od 0 do 255 určujúcimi intenzitu červenej, zelenej a modrej, alebo názvom, napr. "red" (zoznam mien farieb). Príkaz setFontSize nastavuje veľkosť písma a setLineWidth nastavuje hrúbku čiary.
  • Po vykreslení všetkých útvarov ukončíme vykresľovanie príkazom drawing.finish();
  • Po spustení programu by mal vzniknúť súbor hello.svg, ktorý si môžete prezrieť napríklad v internetovom prehliadači.

Animácie

  • Príkaz wait umožní pozastaviť vykresľovanie SVG súboru o zadaný čas v sekundách, takže jednotlivé útvary sa objavujú postupne.
  • Príkaz clear schová všetky vykreslené útvary, takže môžeme kresliť znova na prázdnu plochu. Pred príkazom clear je vhodné použiť wait.
  • Príkaz hideItem schová objekt (napr. čiaru) so zadaným číslom. Každý kresliaci príkaz vráti číslo práve vykresleného objektu, takže si ho stačí uložiť v nejakej premennej pre neskoršie mazanie.

Príkazy pre korytnačiu grafiku

Namiesto vykresľovania obdĺžnikov, čiar a pod na zadané súradnice môžeme obrázok vytvoriť aj korytnačou grafikou. Na obrázku bude pohyb korytnačky znázornený ako červený trojuholník a za sebou bude nechávať čiernu čiaru.

  • Príkazom typu Turtle turtle(200, 300, "domcek2.svg", 50, 250, 0); vytvoríme SVG obrázok určitej veľkosti a s určitým menom súboru. Posledné tri čísla udávajú počiatočnú polohu korytnačky a jej natočenie.
  • Korytnačka si pamätá svoju polohu a natočenie na ploche. Príkaz forward posunie korytnačku dopredu, príkazy turnLeft a turnRight ju otočia.
  • Príkaz setSpeed umožňuje zmeniť rýchlosť korytnačky, aby sme lepšie videli, ako sa postupne hýbe.