<othercredit role="translator"><firstname>Marek</firstname><surname>Laane</surname><affiliation><address><email>bald@starman.ee</email></address></affiliation><contrib>Tõlge eesti keelde</contrib></othercredit>
<listitem><para>Pakkuda õppuritele võimalust arvuti abil interaktiivselt uurida matemaatilisi kujundeid ja kontseptsioone. </para></listitem>
<listitem><para>Olla matemaatiliste kujundite loomise ning nende teistesse rakendustesse kaasamise <acronym>WYSIWYG</acronym> töövahend.</para></listitem>
<para>Probleemidest &kig;i kasutamisel saab teada anda sisemise veateatevahendi abil (<menuchoice><guimenu>Abi</guimenu><guimenuitem>Saada vearaport...</guimenuitem></menuchoice>) või mulle otse kirjutades e-posti aadressile <email>toscano.pino@tiscali.it</email>. </para>
<para>&kig; toetab ka makrosid ja lookuseid, võimaldades määrata üsna keerulisi makrosid. Kui oled loonud mõne huvitava makro ja arvad, et see võiks kasuks tulla ka teistele, võid selle mulle saata (aadressil <email>toscano.pino@tiscali.it</email>), et ma saaksin selle uue versiooniga kaasa panna. See tähendab ühtlasi, et sinu panus litsenseeritakse vastavalt &kig;i litsentsile ehk <ulink url="http://www.gnu.org/licenses/licenses.html#GPL">GPL</ulink>-ile, mis tähendab, et teised inimesed võivad seda vabalt kasutada ja oma vajadustele kohandada. </para>
<para>Vali menüükäsk <menuchoice><guimenu>Objektid</guimenu><guisubmenu>Punktid</guisubmenu><guimenuitem>Tavaline punkt</guimenuitem></menuchoice> või klõpsa vastavat nuppu tööriistaribal. Seejärel saab punkti luua, kui klõpsata aknas soovitud kohale.</para> <note><para>Tegelikult käib ka teiste objektide loomine sama lihtsalt: klõpsa vajalikul elemendil menüüs või tööriistaribal ning vali aknas objekti loomiseks vajalikud elemendid.</para></note>
<para>Et punkte on väga tihti vaja luua, siis tekitab selle juba lihtsalt klõps &HKN;ga kuskil aknas, ilma et oleks vaja kasutada menüüd või tööriistariba. </para>
<para>Punkte saab luua samal ajal, kui taustal luuakse teisi objekte, ning seejärel neid vajaduse korral muude objektide jaoks valida. Selle kohta vaata lähemalt <xref linkend="constructing-other-objects"/>. </para>
<para>Muude, punktist erinevate objektide loomine käib vastavat kirjet menüüs <guimenu>Objektid</guimenu> valides või klõpsates mõnele tööriistariba nupule. </para>
<para>See käivitab vastavat tüüpi objekti loomise. Kõik sellised tüübid nõuavad teatud argumente. Kui näiteks valid ringi loomise keskpunkti ja punkti järgi, tuleb ka määrata kaks punkti: üks neist keskpunkt ja teine punkt ringjoonel. </para>
<para>Argumentide valimiseks klõpsa objektil, mida soovid kasutada. Kui liigutad hiirekursorit üle objekti, mida on võimalik vajaliku objekti loomiseks kasutada, ilmub eelvaatlus, mis näitab, milline loodav objekt hakkab antud juhul välja nägema. Objektide korral, mille argumendiks on punktid, saab uue punkti luua kursori hetkeasukohas ning selle siis valida &HVN;ga. </para>
<para>Uue objekti loomisest saab alati loobuda vajutusega klahvile &Esc; või klõpsuga tööriistariba nupul <guiicon>Stopp</guiicon> (punane kaheksanurk, mille keskel on <quote>X</quote>). </para>
<para>Klõps objektil valib selle, tühistades varasema valiku. Kui soovid ka varasemat valikut säilitada, hoia objektile klõpsamise ajal all klahvi &Ctrl;. </para>
<para>Aknas tühjale kohale klõpsates ja hiirt lohistades saab valida kõik objektid, mis jäävad tekkiva ristküliku sisse. See tegevus tühistab varasema valiku. Ka siin tuleb varasema valiku säilitamiseks all hoida klahvi &Ctrl;. </para>
<para>Kui sul on hiire all rohkem kui üks objekt, saad hõlpsasti valida, millist objekti valida või lisada senisele valikule. Klõpsa &HVN;ga, hoides samal ajal all klahvi &Shift;, mis näitab kõiki hiire all asuvaid objekte. Seejärel vali nende seast vajalik objekt. Nagu juba öeldud, mõjutab klahvi &Ctrl; kasutamine valikut. </para>
<para>Objektide liigutamiseks tuleb need esmalt <link linkend="selecting-objects">valida</link>. </para>
<para>Kui oled valinud objektid, mida soovid liigutada, saad neid liigutada, kui klõpsad ükspuha millisel neist &HVN;ga ja lohistad hiirt. Kui oled jõudnud vajalikku asukohta, vabasta &HVN;. </para>
<note><para>Mõningate objektide puhul (ennekõike keerulisemad lookused) on objektide liigutamine vanema riistvara korral üsna aeglane. See on muidugi kahetsusväärne, kuid arvestades liigutamiseks vajalike arvutuste mahtu paraku vältimatu. </para></note> <note><para>Kui klõpsata &HPN;ga mõnel valitud objektil ja valida käsk <guimenuitem>Liiguta</guimenuitem>, paneb objektid liikuma juba ainuüksi hiire liigutamine. Kui objekt on jõudnud soovitud asukohta, peatab liikumise klõps &HVN;ga.</para></note>
<para>Klõpsata mõnel valitud objektil &HPN;ga ning valida käsk <guimenuitem>Kustuta</guimenuitem> ilmuvast <link linkend="objects-context-menus">kontekstimenüüst</link>. </para>
<para>&kig;is on võimalik objekte ka peita. Selleks tuleb objektid valida, teha neil klõps hiire <mousebutton>parema</mousebutton> nupuga ja valida käsk <guimenuitem>Peida</guimenuitem> ilmuvast <link linkend="objects-context-menus">kontekstimenüüst</link>. </para>
<para>Peidetud objektide taas nähtavale toomiseks saab kasutada menüükäsku <menuchoice><guimenu>Redigeerimine</guimenu><guimenuitem>Näita kõiki</guimenuitem></menuchoice>. See toob nähtavale kõik parajasti peidetud objektid. </para>
<para>Öine nägemine ehk infrapunarežiim on eriti kasulik peidetud objektide korral. Kui pead üht või enamat objekti liigutama või neis midagi muutma, aga ei soovi kõiki peidetud objekte nähtavaks muuta, siis on just sellest abi. </para>
<para>Põhimõtteliselt lubab see peidetud objekte näha, nagu oleks need nähtaval, nii et sa saad neid töödelda nagu tavalisi objekte. Selles režiimi näidatakse peidetud objekte halli tooniga. </para>
<para>&kig;is on võimalik tagasi võtta peaaegu igasugust dokumendis sooritatud muudatust. Selleks tuleb vaid kasutada tööriistaribal asuvaid nuppe <guiicon>Võta tagasi</guiicon>/<guiicon>Tee uuesti</guiicon> või vastavaid kiirklahve. </para>
<para>&kig; võimaldab kasutada ka täisekraanrežiimi. Selleks klõpsa vastaval nupul tööriistaribal või kasuta menüükäsku <menuchoice><guimenu>Seadistused</guimenu><guimenuitem>Täisekraan</guimenuitem></menuchoice>. </para>
<para>Täisekraanrežiimist lahkumiseks klõpsa &HPN;ga akna tühjas osas, kus pole ühtegi objekti, ning vali käsk <guimenuitem>Välju täisekraanrežiimist</guimenuitem>, või vajuta klahvi &Esc;. </para>
<para>&kig; toetab päris paljusid objektitüüpe. Sa võid kõiki neid ise proovida, sest ma arvan, et see on palju õpetlikum kui käsiraamatust teooria lugemine. Arvesta aga palun, et tööriistaribal ei ole näha mitte kõik võimalikud objektid - mõningaid saab luua vaid käsuga menüüst <guimenu>Objektid</guimenu>. Nagu &kde;s ikka, on tööriistaribadel näidatav mõistagi igati seadistatav. Kui soovid sinna objekte või midagi muud lisada, kasuta menüükäsku <menuchoice><guimenu>Seadistused</guimenu><guimenuitem>Tööriistaribade seadistamine...</guimenuitem></menuchoice>. </para>
<para>&kig; pakub võimalust kasutada objektide puhul kontekstimenüüd. Selleks tuleb mingil objektil klõpsata &HPN;ga. Menüüs on mitmeid võimalusi: selle abil saab luua uusi objekte, määrata värve või ka objekte peita, liigutada või kustutada. Mõningatel objektidel on kontekstimenüüs ainult neile omaseid võimalusi, näiteks saab teatud punkte kinnistada sirgjoone külge, millega nad varem ei olnud seotud &etc; Katseta ja vaata, mida miski teeb. Midagi rasket ega üle mõistuse käivat siin kindlasti ei ole. </para>
<para>Klõps &HPN;ga dokumendil, &ie; akna osal, kus ei paikne objekt, avab hüpikmenüü. mis võimaldab luua uusi objekte, muuta kasutatavat koordinaatide süsteemi, näidata peidetud objekte või isegi dokumenti suurendada või vähendada. </para>
<para>&kig;i üks suurepäraseid võimalusi on makrode kasutamine. See lubab määrata objekte omavahel kombineerides sootuks uut tüüpi objekte. </para>
<para>Oletame näiteks, et soovid luua makro, mis tekitaks kolme punkti põhjal ringjoone. Siis tuleb sul luua kolm punkti, mõned ristsirged ja keskpunktid, kuni oled leidnud keskpunkti, ning seejärel luua ringjoon keskjoone ja ühe punkti järgi. Seda aitab selgitada all toodud joonis. </para>
<para>Nüüd vaatame makro defineerimist. Vali käsk <guimenuitem>Uus makro</guimenuitem> menüüst <guimenu>Tüüp</guimenu> või klõpsa tööriistariba vastaval nupul. Ilmub nõustaja, mis palub valida antud objektid. Meie näites on neiks kolm punkti. Vali kolm punkti (klõps neil valib, uus klõps tühistab valiku) ning klõpsa jätkamiseks nupule <guibutton>Järgmine</guibutton>. Seejärel tuleb valida lõppobjektid (meie näites on selleks ringjoon). </para>
<para>Kui see on tehtud, klõpsa jätkamiseks nupule <guibutton>Järgmine</guibutton>. Sisesta uue tüübi nimi ja soovi korral ka kirjeldus ning klõpsa nupule <guibutton>Lõpeta</guibutton>. Makro ongi valmis. </para>
<para>Uue makrotüübi kasutamiseks klõpsa selle nupule tööriistaribal või vali see menüüst <menuchoice><guimenu>Objektid</guimenu></menuchoice>. Makroobjekti loomine sarnaneb igati tavapärase objekti loomisega. </para>
<para>Nagu nägime eelmises peatükis, võimaldab &kig; luua omaenda objekte. &kig; tagab ka selle, et kui oled objekti loonud, salvestatakse see rakendusest väljumisel ning laaditakse rakenduse uuel käivitamisel. Makrosid ei pea käsitsi salvestama ega avama. Kuid &kig; võimaldab makrodega veel palju enam ette võtta. Kui valid menüükäsu <menuchoice><guimenu>Tüübid</guimenu><guimenuitem>Halda tüüpe...</guimenuitem></menuchoice>, ilmub dialoog, kus saad oma tüüpe redigeerida. See võimaldab kustutada tüübid, mida sa enam ei vaja, salvestada need faili või ka avada failist. </para>
<para>&kig; võimaldab loodud objektidele lisada tekstipealdisi. See on väga tulus nimede, selgituste või mingi muu vajaliku teksti näitamiseks. &kig; võib näidata ka mitmesugust infot objektide kohta (seda nimetatakse sageli <quote>omadusteks</quote>). </para>
<para>Seejärel tuleb valida koht, kuhu pealdis asetada. Valida võib suvalise koha aknas või siis <quote>siduda</quote> pealdise mõne objektiga. </para>
<para>Nüüd ilmub tekstipealdise dialoog. Siin saab kirja panna teksti, mida pealdis peaks näitama, ning kui see on tehtud, tuleb klõpsata nupule <guibutton>Lõpeta</guibutton>. Ja ongi pealdis dokumendis olemas. </para>
<para>Eelmine näide oli üsna lihtne ja piirdus ainult tekstiga. Kuid võimalik on pealdises näidata ka mitmesugust infot objektide kohta, ⪚ võib luua pealdise tekstiga <quote>Selle lõigu pikkuseks on %1</quote>, kus <token>%1</token> asendatakse vastavalt muutustele konkreetse lõigu pikkusega. </para>
<para>Selleks kirjuta tekst ja määra selles numbritega kohatäitjad (<token>%1</token>, <token>%2</token> &etc;). Kui oled lõpetanud, vajuta jätkamiseks nupule <guibutton>Järgmine</guibutton>. Kui soovid hiljem teksti või muutujaid täiendavalt redigeerida, saad seda teha nupu <guibutton>Tagasi</guibutton> abil. </para>
<para>Nõustaja näitab nüüd sisestatud teksti, kus kõigi kohanäitajate asemel seisab <guilabel>argument 1</guilabel> või midagi sellist. Valimaks, mida teatud argumendina näidatakse, tuleb esmalt klõpsata vajalikul argumendil. Seejärel klõpsa objektil, mis peab infot näitama, ning vali ilmuvast hüpikmenüüst see infotüüp, mida soovid näha. Meie näite korral tuleks siis klõpsata kirjel <guilabel>argument 1</guilabel>, seejärel klõpsata &kig;i peaaknas vajalikul lõigul ja valida omadus <guilabel>Pikkus</guilabel>. Pärast seda saad sama operatsiooni sooritada muude muutujatega. Kui oled valmis, klõpsa tekstipealdise lõplikuks loomiseks nupule <guibutton>Lõpeta</guibutton>. </para>
<para>&kig; toetab ka lookuste kasutamist. Lookus on lühidalt öeldes on see kujund, mis on määratud kõigi punktidega, millest punkt üle liigub, kui liigub mingi kinnispunkt... See võib kõlada üpris keerulisena, kuid tegelikult see nii hull ei olegi ja kindlasti saab asi järgneva näite varal üsna selgeks. </para>
<para>Kujutame ette sellist geomeetrilist konstruktsiooni: me tõmbame ringjoone ning märgime sellel punkti, mis võib mööda ringjoont liikuda (selle saab luua, kui viia hiirekursor ringjoonele ja klõpsata &HKN;ga. Kui hiljem püüad tekkinud punkti liigutada, näed, et seda ei saa ringist välja liigutada). Nüüd tõmbame sellest punktist lõigu ringjoone keskpunkti ja märgime lõigu keskpunkti. </para>
<para>Kui nüüd liigutada ringjoonele kinnitatud punkti, näed, et liigub ka teine punkt. Kui teha esimese punktiga ära terve ring, ilmub nähtavale uus, poole väiksem ring. See ongi lookus ehk siis teekond, mida läbib teine punkt, kui esimene teeb tiiru ringjoonel. </para>
<para>Tegelikult ongi lookuse loomine päris lihtne. Selleks tuleb klõpsata tööriistariba vastaval nupul või valida menüükäsk <menuchoice><guimenu>Objektid</guimenu><guisubmenu>Muu</guisubmenu><guimenuitem>Lookus</guimenuitem></menuchoice>. Seejärel tuleb luua liikuv kinnispunkt (selle kohale hiirt viies ilmub nähtavale tekst <guilabel>Liikuv punkt</guilabel>) ning teine, sõltuv punkt. Nähtavale ilmubki lookus. </para>
<para>&kig; võimaldab kasutajal luua oma tüüpe Pythoni skriptikeeles. See on väga kasulik võimalus ja ma tean veel ainult üht interaktiivse geomeetria rakendust, mis sellist võimalust pakub (<acronym>GNOME</acronym> rakendus &drgeo;). </para>
<para>Pythoni skriptid võimaldavad &kig;is luua täiesti kasutaja meele järgi meetodi määrata objekt teatud emaobjektide põhjal. Kui oled näiteks matemaatikaõpetaja ja sul on oma lahe meetod arvutada välja koonuse vajalik punkt, siis selle asemel, et näha vaeva keeruka loomisprotsessi ja makrodega, võid lihtsalt kirjutada Pythoni skripti, mis määrab, kuidas punkti arvutada - ja &kig; näitab seda graafiliselt. </para>
<para>Taas on seda ilmselt mõistlikum selgitada näite varal. Oletame, et sa oled kahe silma vahele jätnud &kig;i pakutava <quote>keskpunkti</quote> võimaluse, kuid tahad ometi näidata kahe määratud punkti keskpunkti. Selleks tuleb klõpsata tööriistariba nupule <guibutton>Pythoni skript</guibutton> või kasutada menüükäsku <menuchoice><guimenu>Objektid</guimenu><guisubmenu>Muu</guisubmenu><guimenuitem>Pythoni skript</guimenuitem></menuchoice>. Seejärel ilmub nõustaja. </para>
<para>Esmalt tuleb valida skriptiobjekti argumendid. Meie näites tähendab see kaht punkti, mille keskpunkti me soovime näidata. Vali punktid &kig;i peaaknas ja klõpsa jätkamiseks nupule <guibutton>Järgmine</guibutton>. </para>
<para>Nüüd ilmub tekstikast, kuhu saab sisestada skriptiobjekti koodi. Kohal on juba mallkood ja mõned kommentaarid. Oluline on kontrollida, et sisestatu oleks ikka korrektne Pythoni kood. Need, kellele Python on juba tuttav, saavad aru, et me tegelikult defineerime Pythoni funktsiooni <function>calc</function>. Seepärast on vajalik kindlasti järgida Pythoni funktsioonide defineerimise reegleid. Nii peab näiteks funktsiooni iga rida algama tabeldusmärgiga. Esimene rida, mis tabulaatorimärgiga ei alga, tähistab funktsiooni definitsiooni lõppu. </para>
<para>Defineeritav Pythoni funktsioon kannab nimetust <quote>calc</quote> ning arvestab meie juhul kaht argumenti. Nendeks on objektid, mille valisime argumentidena eelmisel ekraanil. Argumente on just nii palju, kui palju argumente varem on valitud. Need kannavad nimetust <parameter>arg1</parameter> ja <parameter>arg2</parameter>, kuid soovi korral võib nende nimetused muuta ka millekski arusaadavamaks. </para>
<para>Selles funktsioonis saab lasta teha kõikvõimalikke arvutusi, mida pead vajalikuks, kasutades selleks ka mainitud kaht argumenti. Tulemuseks peaks olema objekt, mida soovid näha. Meie näites on selleks punktiobjekt. Kaks argumenti on samuti punktiobjektid ning me võime kasutada kahe antud punkti koordinaatide jaoks funktsiooni <function>Point.coordinate()</function>. </para>
<para>Meie näites vajalik arvutus on äärmiselt lihtne: kaks koordinaati tuleb liita ja tulemus kahega jagada. Nii saame saadud tulemust kasutades luua uue punkti. Selleks vajalik Pythoni kood näeb välja selline:</para>
<para>Kui nüüd klõpsata nupule <guibutton>Lõpeta</guibutton>, ilmubki uus objekt &kig;i dokumenti. Kui liigutad üht selle punkti, liigub kaasa ka uus, loodud punkt. Sel moel on võimalik mõistagi luua ka palju mõjusamaid objekte, mida me soovitame sul soojalt endal järele proovida. </para>
<para>Kõiki &kig;i objekte võib kasutada Pythoni koodis. Nagu eespool nägime, kuuluvad punktid klassi <classname>Point</classname> ja me võime kasutada ⪚ meetodit <function>Point.coordinate()</function>. Tulemuseks võib aga olla mis tahes tüüpi objekt, mitte tingimata <classname>Point</classname>. &kig;i Pythoni kood pakub ohtralt klasse ja meetodeid, millest täpsema ülevaate leiab <ulink url="http://edu.kde.org/kig/manual/scripting-api/index.html">siit</ulink>. </para>
<para>&kig; on vaba tarkvara. See tähendab, et sul on õigus seda kasutada ja selle lähteteksti muuta oma soovide kohaselt. &kig;i levitamine on aga seotud teatud piirangutega, mis ennekõike puudutavad tõsiasja, et kõigil peavad olema ühesugused õigused kasutada &kig;i, sealhulgas sinu tehtud muudatusi. </para>
<para>Vaba tarkvara arendavad tõeliselt vabadust ihkavad inimesed ning arendajad on tavaliselt väga tänulikud kasutajate tagasiside üle. Seepärast: kui sul on küsimusi, kaebusi või üldse midagi &kig;i kohta öelda, ütle seda mulle e-kirjas aadressile <email>toscano.pino@tiscali.it</email>. </para>
<para>&kig; on KPart-rakendus, mis tähendab, et seda on võimalik põimida muu &kde; tarkvaraga. Kui avad näiteks &konqueror;is faili laiendiga <literal role="extension">.kig</literal>, avatakse see otse &konqueror;i aknas ilma välist rakendust käivitamata. </para>
<para>&kig;i kasutamine on väga hõlpus, objektide loomine lihtne ja interaktiivne, näha saab ka vahetulemusi &etc; Liigutamine, valimine ja loomine käib just nii, nagu seda võibki oodata. Ka toimingute tagasivõtmine on täiesti tasemel. </para>
<para>&kig; võimaldab makrosid kasutada ilma mingite raskusteta. Sel moel loodud objektid alluvad samadele reeglitele nagu tavalised objektid. Need salvestatakse rakenduse sulgemisel ja laaditakse selle käivitamisel, nii et igal juhul ei lähe nad kaduma. Objekte saab hallata dialoogis <guilabel>Tüüpide haldamine</guilabel> (vaata <xref linkend="working-with-types"/>). Neid saab faili salvestada, failist avada, muuta ja kustutada. </para>
<para>&kig; võimaldab eksportida &kig;i faili ka mõnda muusse vormingusse, näiteks pildiks, <application>XFig</application>- või <application>LaTeX</application>-failiks või <acronym>SVG</acronym> vektorpildiks . See on üpris kasulik, sest paraku ei toeta veel mitte kõik rakendused &kig;i failivormingut. </para>
<para>&kig; püüab olla oma konkurentidega ühilduv, mistõttu on toetatud näiteks &kgeo; ja &kseg;i ning osaliselt &drgeo; ja &cabri; failivorming. Kavas on pakkuda toetust teistelegi vormingutele. </para>
<para>&kig; on <ulink url="http://www.gnu.org/philosophy/philosophy.html#AboutFreeSoftware">vaba tarkvara</ulink>. See tähendab, et rakenduse lähtetekst on internetis kõigile vabalt kättesaadav ning kõik võivad seda kasutada, uurida, muuta ja levitada. Mina näen selle kallal vaeva hobi korras ning ma olen tänu sellele saanud päris palju teada programmeerimise, C++, &kde;/&Qt;, matemaatika, tarkvara ühilduvuse ning vaba tarkvara projektide kohta. </para>
<para>Selle peatüki mõte on tutvustada sulle kui kasutajale õigusi, mida annab sulle &kig;i litsents. Nagu vaba tarkvara puhul ikka, on sul õigus parandada vigu, mis kasutamisel ette tulevad (ja ma väga soovin, et sa seda teeksid), lisada võimalusi, mis sinu arvates puuduvad, levitada muudetud rakendust ning saata need muudatused ka mulle aadressile <email>toscano.pino@tiscali.it</email>, et ma võiksin need lisada uude versiooni, mis võimaldab kõigil neist osa saada. Minul isiklikult ei ole selle projektiga seotud mingeid rahalisi huve, nii et see jutt ei ole kindlasti mõeldud turustamisnipina. </para>
<para>Kui sa ei ole päris kindel, millised on sinu õigused selle tarkvara kasutamisel või millised on teiste inimeste õigused kasutada muudatusi, mida sa oled rakendusse teinud, tutvu palun litsentsiga. Selle leiab &kig;i paketist failis <filename>COPYING</filename> või dialoogi <guilabel>Kigi info</guilabel> litsentsikaardilt. </para>
<para>Oodatud on igasugune kaasabi. Kui arvad, et ikoonid võiks olla palju etemad või et käsiraamat vajab kohendamist-täiendamist või kui sul on valmis saanud lahe makro, mida kõik peaksid naudinguga kasutama, ära kõhkle, vaid saada oma panus mulle. Arvesta, et sinu kaastööd levitatakse vastavalt &GNU; Üldise Avaliku Litsentsi tingimustele, millega saab tutvuda &kig;i lähtetekstipaketi failis <filename>COPYING</filename> või ka käesolevas käsiraamatus peatükis <link linkend="credits">Autorid ja litsents</link>. </para>