ITI0011:Kimp

Allikas: Kursused
Redaktsioon seisuga 10. oktoober 2014, kell 13:10 kasutajalt Ago (arutelu | kaastöö) (Uus lehekülg: 'Tagasi ITI0011 lehele. English version of this homework: ITI0011:Kimp homework (TODO). == Üldine == Tähtaeg: kood tuleb laadida git'i hiljemalt pühapäeval, '''16. nove...')
(erin) ←Vanem redaktsioon | Viimane redaktsiooni (erin) | Uuem redaktsioon→ (erin)
Mine navigeerimisribale Mine otsikasti

Tagasi ITI0011 lehele.

English version of this homework: ITI0011:Kimp homework (TODO).

Üldine

Tähtaeg: kood tuleb laadida git'i hiljemalt pühapäeval, 16. novembril kell 23:59. Kaitsmine: 18. või 20. november (vastavalt rühma tunnile)
Enne seda nädalat kaitsmine annab +1 lisapunkti. Eeldus on, et kood on git'i laetud enne kaitsmist.

Tuleb kirjutada graafilise kasutajaliidesega joonistamisprogramm kasutades JavaFX teeki. Programm võimaldab kasutajal hiirega kujundeid joonistada ning kujunditega teatud operatsioone sooritada.

Põhiosa

  • Programm kuvab kasutajale graafilise kasutajaliidese (akna) ja võimaldab sellel järgmiseid kujundeid joonistada:
    • vabakäejoon - joonistamise alustamiseks kasutaja vajutab ja hoiab all vasakut hiire nuppu. Hiirt lohistades kuvab programm hiire liikumise trajektoori joonega. Kujundi joonistamine lõppeb vasaku hiirenupu vabastamisega.
    • ristkülik - joonistamise alustamiseks kasutaja vajutab ja hoiab all vasakut hiire nuppu. Ekraani positsioonil, kus hiire nuppu vajutati, registreeritakse ristküliku üks nurk. Lohistamise ajal kuvatakse hiire positsioonil ristküliku teine nurk (algsega nurga vastasnurk). Kujundi joonistamine lõppeb vasaku hiirenupu vabastamisega.
  • Programm võimaldab joonistada suvalise arvu kujundeid.
  • Joonistada peab saama ka punkti (hiire klikk ilma hiirt vahepeal liigutamata - joone algus- ja lõpp-punkt on samad).
  • Akna parameetrite muutmisel - suurendamine/vähendamine, nihutamine, osaliselt või täielikult teiste akendega peitmine - ei tohi joonistatud kujundeid visuaalselt rikkuda.
  • Programmist peab olema võimalik väljuda vajutades klahvi <escape>