83
100
>Sissejuhatus</title>
85
>&rocs;i eesmärk on olla graafiteooria arenduskeskkond, mis aitab professoritel kuvada graafialgoritmi tulemusi ning tudengitel iseseisvalt algoritme koostada.</para>
102
>&rocs; on graafiteooria arenduskeskkond kõigile, keda huvitab graafialgoritmide loomine ja analüüs. See hõlmab muu hulgas</para>
106
>õppejõude, kes soovivad demonstreerida algoritme oma õpilastele,</para
110
>õppureid, kes soovivad mõista ja näha algoritmide tööd,</para
114
>kõiki, kes peavad mis tahes põhjusel looma graafialgoritme ja vajavad tööriista prototüüpide testimiseks.</para
118
>Kõigile neile pakub &rocs; hõlpsasti pruugitava graafiredaktori, millega graafe luua, võimsa QTScripti mootori algoritmide täitmiseks ja mitu abitööriista graafide ja andmestruktuuride loomiseks enda katsete tarbeks. Tavaliselt käib asi nii, et kõigepealt kirjutatakse algoritm, siis luuakse graaf ja siis uuritakse reaalajas, kuidas algoritm graafi peal toimib.</para>
88
>&rocs;il on oma skriptimoodul, mille aluseks on Qt Script, mis teeb koostööd kujutatud graafiga, nii et iga graafiga seotud skriptis tehtud muudatus kajastub kohe ka näidataval graafil.</para>
122
>&rocs;i pilt.</screeninfo>
125
<imagedata fileref="rocs-screenshot.png" format="PNG"/>
129
>&rocs;i pilt.</phrase>
91
<chapter id="using-rocs">
93
>&rocs;i kasutamine</title>
95
>Kasutajaliides jaguneb kaheks: </para
101
>ülal paremal kuvatakse graafi, all paremal aga saab luua algoritmi, </para
105
>vasakul külgribal on näha kõik avatud graafid (graafe võib ühes failis olla ka mitu). </para
110
<sect1 id="rocs-features">
112
>&rocs;i globaalsed seadistused</title>
135
<chapter id="user-interface">
137
>&rocs;i kasutajaliides</title>
139
<sect1 id="user-interface-all">
141
>Kasutajaliidese põhielemendid</title>
143
>Kasutajaliides jaguneb mitmeks loogiliseks osaks, nagu on näha ka juuresoleval pildil. </para>
146
>&rocs;i liidese graafilised elemendid.</screeninfo>
149
<imagedata fileref="rocs-interfaces.png" format="PNG"/>
153
>&rocs;i liidese graafilised elemendid.</phrase>
160
>Visuaalse graafiredaktori riba</term>
163
>Graafi loomiseks või muutmiseks visuaalses graafiredaktoris tuleb siin kõigepealt valida tööriist</para
168
>Visuaalne graafiredaktor</term>
171
>Siin saab graafid joonistada. Paremklõps tühjal alal, graafi elementidel või valitud graafi elementidel avab kontekstimenüü, mis mõnevõrra erineb sõltuvalt sellest, kus klõpsati.</para
176
>Graafi omadused</term>
179
>Siin näeb kõigi parajasti visuaalse graafiredaktori lõuendil olevate graafide loendit. Siin saab teha ka muudatusi näiteks graafi nimes, nähtavates omadustes, näiteks tippude nimedes või väärtustes, samuti määrata graafi elementide vaikimisi värve.</para
184
>Skriptiredaktor</term>
187
>Selles tekstiredaktoris saab kirjutada algoritme QtScriptis (antud juhul on see põhimõtteliselt samane JavaScriptiga). Korraga võib tegutseda ka mitme algoritmi kallal, avades või luues menüü abil uusi skriptikaarte. Kui skripti tehtud muudatused on salvestamata, näeb kaardi sakil väikest ketast.</para
192
>Silumis- ja skriptiväljund</term>
195
>Selles tekstialas näeb kas sinu skripti silumisteavet või väljundit sõltuvalt väljundi valikust. Kui skript tekitab vigu, valitakse automaatselt silumisväljund. Silumisväljund näitab samuti kõiki programmi väljundteateid.</para
200
>Skripti töölepanek</term>
203
>See ala tegeleb skriptide töölepanekuga. Parajasti avatud skripti saab rakendada visuaalse graafiredaktori lõuendil olevale graafile, kui klõpsata nupule <guiicon
205
>. Skripti käivitamise järel saab selle täitmist ka peatada, kui klõpsata nupule <guiicon
213
<sect1 id="user-interface-toolbars">
215
>Tööriistaribad</title>
217
>Siin on mitmesugused visuaalse graafiredaktori tööriistaribad, mis võimaldavad vajalikke võimalusi kasutada üheainsa klõpsuga. Vaikimisi näeb järgmisi tööriistaribasid:</para>
221
>Peamine tööriistariba</para
229
<sect2 id="user-interface-toolbars-main">
231
>Peamine tööriistariba</title>
234
>Peamine tööriistariba</emphasis
235
> koosneb järgmistest toimingutest. Toimingule klõpsamine tähendab seda, et saad hiirega rakendada antud toimingu visuaalse graafiredaktori lõuendis:</para>
241
>: elementide valimiseks klõpsa lõuendi tühjal alal, hoia hiirenupp all ja joonista ristkülik, mis sisaldab mõningaid tippe ja/või seoseid, mis sel juhul valitakse, või klõpsa vahetult valimata elemendi peal selle valimiseks. Kui klõpsad valitud elemendil või elementidel, saab hiirenuppu all hoides ja hiirt liigutades elemente liigutada. Valitud elemente saab liigutada ka nooleklahvidega.</para
247
>: klõpsa visuaalse graafiredaktori lõuendil vajalikus kohas ja loo uus tipp, mis kuulub parajasti valitud graafile.</para
253
>: klõpsa mõnel tipul, hoia hiir all ja tõmba joon teise tipuni, milleni seos peab ulatuma. Seda toimingut saadab edu ainult siis, kui aktiivne graaf võimaldab sellist seost lisada (nt. orienteerimata graafil ei ole lubatud lisada kahe tipu vahele mitut seost).</para
259
>: klõpsa elemendil selle kustutamiseks. Kui kustutad tipu, kustutatakse ka kõik sellega seotud seosed.</para
265
>: klõpsa lõuendil, hoia &HVN; all ja joonista sellega ristkülik. Lõuendit suurendatakse, nii et näed ainult valitud osa. Samuti võib suurendada või vähendada hiirerattaga. Topeltklõps &HVNga; taasta esialgse suurenduse.</para
270
>Peamine tööriistariba</screeninfo>
273
<imagedata fileref="rocs-toolbar-main.png" format="PNG"/>
277
>Peamine tööriistariba</phrase>
283
<sect2 id="user-interface-toolbars-alignment">
287
>Lisada võib ka <emphasis
288
>joondusriba</emphasis
289
>. Mõnele selle riba toimingule klõpsates saab vahetult mõjutada parajasti valitud tippe:</para>
295
<imagedata fileref="hi22-action-rocsaligntop.png" format="PNG"/></imageobject>
299
>: tipud joondatakse kõige ülemise tipu vertikaalse positsiooni järgi. See puudutab ainult vertikaalset positsiooni.</para
305
<imagedata fileref="hi22-action-rocsalignvmiddle.png" format="PNG"/></imageobject>
309
>: tippude joondamine kõigi valitud tippude vertikaalsete positsioonide keskme järgi. See puudutab ainult vertikaalset positsiooni.</para
315
<imagedata fileref="hi22-action-rocsalignbottom.png" format="PNG"/></imageobject>
319
>: tipud joondatakse kõige alumise tipu vertikaalse positsiooni järgi. See puudutab ainult vertikaalset positsiooni.</para
325
<imagedata fileref="hi22-action-rocsalignleft.png" format="PNG"/></imageobject>
329
>: tipud joondatakse kõige vasakpoolsema tipu horisontaalse positsiooni järgi. See puudutab ainult horisontaalset positsiooni.</para
335
<imagedata fileref="hi22-action-rocsalignhmiddle.png" format="PNG"/></imageobject>
339
>: tipud joondatakse kõige ülemise tipu horisontaalse positsiooni järgi. See puudutab ainult horisontaalset positsiooni.</para
345
<imagedata fileref="hi22-action-rocsalignright.png" format="PNG"/></imageobject>
349
>: tipud joondatakse kõige parempoolsema tipu horisontaalse positsiooni järgi. See puudutab ainult horisontaalset positsiooni.</para
355
<imagedata fileref="hi22-action-rocsaligncircle.png" format="PNG"/></imageobject>
359
>: tipud joondatakse ringi, mille diameeter võrdub tippude maksimaalse vahemaaga. Tipud paigutatakse samas järjekorras nagu vaates alates tippude raskuskeskmest.</para
365
<imagedata fileref="hi22-action-rocsaligntree.png" format="PNG"/></imageobject>
368
>Kattuvate seoste minimeerimine</guilabel
369
>: rakendatakse Rruchterman-Reingoldi algoritmile kattuvate seoste arvu (ligilähedaseks) minimeerimiseks.</para
374
>Joondusriba</screeninfo>
377
<imagedata fileref="rocs-toolbar-alignment.png" format="PNG"/>
381
>Joondusriba</phrase>
388
<sect1 id="user-interface-graph-properties">
390
>Graafi omadused</title>
114
392
>Vasakul külgribal leiab valikud kõigi avatud graafide jaoks. Kõik need on globaalsed iga graafi jaoks ning neid võib muuda tipu või seose jaoks vastavalt tipu või seose omaduste dialoogis.</para>
119
>Graafi nimi</guilabel>
399
>: nimi, mida algoritm peab kasutama graafi mõjutamiseks. </para
404
>Andmete värv</guilabel
126
405
> uute tippude jaoks: klõpsuga nupule <guilabel
128
407
> saab muuta kõigi aktiivsete tippude värvi </para
133
>Seose värv</guilabel>
412
>Osuti värv</guilabel
413
> <!--FIXME color of edges?-->
138
418
>Valikute viimane rida sisaldab klõpsatavaid nuppe:</para>
143
423
>Nimede näitamise koht</guilabel
153
433
>Väärtuste näitamise koht</guilabel
157
437
>Seosed</guilabel
163
>Graph is oriented</guilabel>
169
>Graph is Automate</guilabel>
175
<sect1 id="rocs-toolbars">
177
>&rocs;i tööriistaribad</title>
179
>Ülal asub kaks tööriistariba. Peamisel tööriistaribal on järgmised tööriistad:</para>
184
>Liiguta tippu</guilabel
185
>: võimaldab liigutada tippu joonistusalal.</para
190
>Lisa tipp Node</guilabel
191
>: loob uue tipu kohta, kus joonistusalal klõpsad.</para
197
>: loob uue seose kahe tipu vahele.</para
203
>: võimaldab valida elemente neil klõpsates.</para
209
>: võimaldab kustutada elemente neil klõpsates.</para
213
>Joondamistööriistadega saab asetada valitud tippe.</para
218
>Hiire parema nupuga tipul või seosel klõpsates saab avada selle tipu või seose omaduste dialoogi.</para>
220
>Paigutusriba koosneb mitmest joondamisikoonist.</para>
223
>Tippude joondamiseks vali tööriist <guiicon
225
>, klõpsa ja joonista lohistades ristkülik ning seejärel vali vajalik joondus. </para>
440
<!-- FIXME missing Graph Type Undirected Graph, Directed Graph, Multigraph -->
229
<chapter id="scripting-rocs">
231
>&rocs;i skriptimine</title>
233
>Kui graaf on juba ekraanil, saab hakata selle jaoks skripti looma. Vastav keel kasutab JavaScripti süntaksit. Järgnevalt on ära toodud graafi, tipu ja seose objektid.</para>
235
<sect1 id="script-graph">
445
<chapter id="using-rocs">
447
>&rocs;i kasutamine</title>
449
>Tavaliselt on esimene samm graafi loomine visuaalse graafiredaktoriga. Seda võib teha käsitsi, see tähendab tippe luues ja neid ühendades, või siis kasutades mõningaid abialgoritme, mida pakub menüükäsk <menuchoice
453
>Graafi genereerimine</guimenuitem
455
>. Samuti võib lõpuks kasutada tööriista <menuchoice
459
>Väärtuste omistamine</guimenuitem
461
>, millega saab anda graafi tippudele ja seostele esialgsed väärtused. Kõige lõpuks tuleb graafile anda nimi. Seda kasutatakse edaspidi identifikaatorina, mida läheb vaja skriptimootoril.</para>
463
<sect1 id="using-rocs-scripting">
467
>&rocs; kasutab JavaScriptile sarnanevat skriptikeelt. See tähendab, et muutujate ja funktsioonide defineerimine ning nende kasutamine käib täpselt samamoodi nagu JavaScriptis. Lisaks pakub &rocs; mitmeid funktsioone, mis võimaldavad kasutada graafe visuaalse graafiredaktori lõuendil ja nende elemente. </para>
471
>Graafi kasutamine</title>
473
>Skriptiliideses saab ligipääsu graafile tagada lihtsalt selle nime kirjutades ja kasutades seda objektina koos mõnega järgnevatest funktsioonidest. ligipääsu tipule või seosele annab graafiobjekti identifikaator.</para>
477
>Graafiobjektid</term>
240
482
array list_edges();
241
483
node add_node(name);
242
484
edge add_edge(from, to);
243
485
node node_byname(QString& name);
244
486
node begin_node();
245
487
array end_nodes();
249
>Graafi muutujad, mida saab muuta:</para>
254
493
string nodeDefaultColor // in HEXA
255
string edgeDefaultColor // in HEXA
494
string edgeDefaultColor // in HEXA
256
495
</programlisting>
259
<sect1 id="script-nodes">
264
506
array adj_edges();
266
508
array output_edges();
267
509
array loop_edges();
268
510
array connected_edges(Node *n);
269
511
void self_remove();
273
>Tipu muutujad:</para>
308
593
>Selle on lihtne näidisskript, mis määrab kindlaks esimese graafi nelja esimese tipu värvi:</para>
310
>/* A simple example that sets the color of the 4 first nodes in the first
595
>/* A simple example that sets the color of the 4 first nodes in the first
313
var colours = new Array("red", "green", "blue", "yellow");
315
/* graphs is an array of graphs, you can access a graph by its index in the
316
array or by its name, so if the first graph's name is Untitled0, the following
598
var colors = new Array("red", "green", "blue", "yellow");
600
/* graphs is an array of graphs, you can access a graph by its index in the
601
array or by its name, so if the first graph's name is Untitled0, the following
317
602
sentence are right */
318
603
var list1= graphs[0].list_nodes(); // 1st form.
319
604
var list2=Untitled0.list_nodes(); // 2nd form
321
for ( var i = 0; i < colours.length; i++){
606
for ( var i = 0; i < colors.length; i++){
323
608
> list2.length) break;
324
list2[i].color = colours[i]
609
list2[i].color = colors[i]
326
611
</programlisting>
331
<chapter id="commands">
333
>Käskude seletused</title>
335
<sect1 id="rocs-mainwindow">
337
>Menüüd ja kiirklahvid</title>
349
> <keycombo action="simul"
375
>Seadistused</guimenu
383
>Seadistused</guimenu
385
>Näidatavad tööriistaribad</guisubmenu
393
>peamise</guimenuitem
395
>paigutuse</guimenuitem
396
> tööriistariba näitamise sisse ja välja.</para
405
>Seadistused</guimenu
407
>Olekuriba näitamine</guimenuitem
414
> olekuriba näitamise sisse ja välja.</para
422
>Seadistused</guimenu
424
>Kiirklahvide seadistamine...</guimenuitem
431
> &kde; standardse kiirklahvide seadistamise dialoogi, kus saab määrata toimingutele kiirklahve. </para
439
>Seadistused</guimenu
441
>Tööriistaribade seadistamine...</guimenuitem
447
>Võimaldab seadistada</action
448
> tööriistaribade välimust. </para
461
&help.menu.documentation; </sect2>
615
>Import ja eksport</title>
617
>&rocs; toetab praegu importimisel ja eksportimisel järgmisi failivorminguid:</para>
621
>DOT-failid, tuntud ka kui Graphviz-failid</para
629
>Klaartekstfailid</para
633
>Praegu imporditakse enamiku failitüüpide korral ainult üksikud väärtused. Imporditavate väärtuste hulka kuuluvad tipud ja nendega seotud seosed, kõigi elementide nimed, väärtused ja olemasolu korral ka koordinaadid.</para>
466
637
<chapter id="credits">
469
639
>Autorid ja litsents</title>
474
>Rakenduse autoriõigus 2009: Tomaz Canabrava tcanabrava at kde dot org </para>
644
>Rakenduse autoriõigus:</para>
648
>Autoriõigus 2008: Ugo Sangiori (ugorox AT gmail.com)</para
652
>Autoriõigus 2008-2011: Tomaz Canabrava (tcanabrava AT kde.org)</para
656
>Autoriõigus 2008-2011: Wagner Reck (wagner.reck AT gmail.com)</para
660
>Autoriõigus 2011: Andreas Cord-Landwehr (cordlandwehr AT googlemail.com)</para
477
>Dokumentatsiooni autoriõigus 2009: &Anne-Marie.Mahfouf; &Anne-Marie.Mahfouf.mail; ja Tomaz Canabrava tcanabrava at kde dot org </para>
665
>Dokumentatsiooni autoriõigus:</para>
669
>Dokumentatsiooni autoriõigus 2009: &Anne-Marie.Mahfouf; &Anne-Marie.Mahfouf.mail;</para
673
>Dokumentatsiooni autoriõigus 2009: Tomaz Canabrava (tcanabrava AT kde.org)</para
677
>Dokumentatsiooni autoriõigus 2011: Andreas Cord-Landwehr (cordlandwehr AT googlemail.com)</para
480
682
>Tõlge eesti keelde: Marek Laane <email