GráfRajz fejlesztői dokumentáció



Hasonló dokumentumok
22. GRÁFOK ÁBRÁZOLÁSA

Felhasználói dokumentáció. a TávTagTár programhoz. Készítette: Nyíri Gábor, hdd@nc-studio.com GDF Abakusz regisztrációs kód: GDFAba43

5/1. tétel: Optimalis feszítőfák, Prim és Kruskal algorithmusa. Legrövidebb utak graphokban, negatív súlyú élek, Dijkstra és Bellman Ford algorithmus.

Technikai információk fejlesztőknek

Felhasználói útmutató a portal.nakvi.hu oldalhoz

Gráfok 2. Legrövidebb utak, feszítőfák. Szoftvertervezés és -fejlesztés II. előadás. Szénási Sándor

Importálás. más típusú (pl:.imp,.xml,.xkr,.xcz) állomány beimportálása a nyomtatványkitöltő programba

Thermo1 Graph. Felhasználói segédlet

Gráfalgoritmusok és hatékony adatszerkezetek szemléltetése

Csődfigyelő. Figyelje Ön is gazdasági partnerit!

Magyar Nemzeti Bank - Elektronikus Rendszer Hitelesített Adatok Fogadásához ERA. Elektronikus aláírás - felhasználói dokumentáció

Hiteles elektronikus postafiók Perkapu

Gráfelméleti alapfogalmak

Adatszerkezetek 2. Dr. Iványi Péter

Programfejlesztési Modellek

A Windows az összetartozó adatokat (fájlokat) mappákban (könyvtárakban) tárolja. A mappák egymásba ágyazottak.

Sú gó az ASIR/PA IR Públikús felú lethez

DKÜ ZRT. A Portál rendszer felületének általános bemutatása. Felhasználói útmutató. Támogatott böngészők. Felületek felépítése. Információs kártyák

Szöveges fájlok szerkesztése Jegyzettömb használata

Kormányzati Elektronikus Aláíró és Aláírás-ellenőrző Szoftver

TERC V.I.P. hardverkulcs regisztráció

Kormányzati Elektronikus Aláíró és Aláírás-ellenőrző Szoftver

A Vonallánc készlet parancsai lehetővé teszik vonalláncok és sokszögek rajzolását.

Java-s Nyomtatványkitöltő Program Súgó

Objektumorientált programozás Pál László. Sapientia EMTE, Csíkszereda, 2014/2015

Óranyilvántartás (NEPTUN)

Számítógép hálózatok, osztott rendszerek 2009

1: Bevezetés: Internet, rétegmodell Alapok: aszimptótika, gráfok. HálózatokII, 2007

Hiteles Elektronikus Postafiók

A dokumentáció felépítése

A d m i n i s z t r á c i ó s f e l a d a t o k a I n t e g r á l t K ö n y v t á r i R e n d s z e r b e n

Microsoft Office PowerPoint 2007 fájlműveletei

3. Beadandó feladat dokumentáció

Felhasználói leírás a DimNAV Server segédprogramhoz ( )

WinSarc Irodai Vezérlőpult: - [Ügyfelek nyilvántartása]

Mintatantervek karbantartása. Felhasználói dokumentáció verzió 2.0.

Algoritmuselmélet. Gráfok megadása, szélességi bejárás, összefüggőség, párosítás. Katona Gyula Y.

Belépés a GroupWise levelező rendszerbe az Internet felől

Online naptár használata

OBO TS használati útmutató. OBO TS online. használati útmutató. Verzió: 3.0. Dátum: január 16.

1. Rétegrend-szerkesztő

Nyomtatvány közvetlen beküldése az Ügyfélkapun keresztül

Az alábbiakban szeretnénk segítséget nyújtani Önnek a CIB Internet Bankból történő nyomtatáshoz szükséges böngésző beállítások végrehajtásában.

A Novitax ügyviteli programrendszer első telepítése

Elmib Önkormányzati hibabejelentő. Felhasználói kézikönyv v1.0

Duál Reklám weboldal Adminisztrátor kézikönyv

Segédlet a program megismeréséhez

SZOFTVERES SZEMLÉLTETÉS A MESTERSÉGES INTELLIGENCIA OKTATÁSÁBAN _ Jeszenszky Péter Debreceni Egyetem, Informatikai Kar jeszenszky.peter@inf.unideb.

Java-s Nyomtatványkitöltő Program

Parlagfű Bejelentő Rendszer

HVK Adminisztrátori használati útmutató

Tömeges csekk nyomtatás beállítása az ASP Adó szakrendszerben

3. Ezután a jobb oldali képernyő részen megjelenik az adatbázistábla, melynek először a rövid nevét adjuk meg, pl.: demo_tabla

NAV nyomtatványok kitöltésének támogatása

DATR bevezetése Békés megyében

Easton420. Automata Telefon hangrögzítő. V 6.0 Telepítése Windows XP rendszerre

Algoritmus terv 3. Fejezet: Folyamatok meghatározása

E-Freight beállítási segédlet

15.4.2b Laborgyakorlat: Mappa és nyomtató megosztása, a megosztási jogok beállítása

Algoritmuselmélet. Mélységi keresés és alkalmazásai. Katona Gyula Y.

Választó lekérdezés létrehozása

MS ACCESS 2010 ADATBÁZIS-KEZELÉS ELMÉLET SZE INFORMATIKAI KÉPZÉS 1

30. ERŐSEN ÜSSZEFÜGGŐ KOMPONENSEK

Tartalomjegyzék. 1. Rövid áttekintés Az alkalmazás bemutatása Vonalak Részletes lista... 5

EGYSZERŰ, NEM IRÁNYÍTOTT (IRÁNYÍTATLAN) GRÁF

ONLINE SZAKÉRTŐI KERETRENDSZER

POSZEIDON dokumentáció (1.2)

PwC EKAER Tool felhasználói leírás május

Szilipet programok telepítése Hálózatos (kliens/szerver) telepítés Windows 7 operációs rendszer alatt

1. Tesztlap: Programablakok

Szeged Megyei Jogú Város Integrált e-önkormányzati Rendszerének Térinformatikai Modul felhasználói kézikönyve. Internetes verzió

web works hungary Rövid technikai tájékoztató a webhosting szolgáltatásról. (PLESK szerver)

Molnár Mátyás. Bevezetés a PowerPoint 2010 használatába. Csak a lényeg érthetően!

Új Nemzedék Központ. EFOP pályázatok online beszámoló felülete. Felhasználói útmutató

Stacionárius csőhálózat számítási feladat augusztus 25.

Home movie database. Specifikáció. Verzió: 1.0. Dátum: Státusz: Released. Készítette: Farkas Róbert. Kulcsár Orsolya.

Navigációs GPS adatok kezelése QGIS programmal (1.4 verzió) Összeállította dr. Siki Zoltán

Gráfelméleti alapfogalmak-1

Mesterséges Intelligencia. Csató Lehel. Csató Lehel. Matematika-Informatika Tanszék Babeş Bolyai Tudományegyetem, Kolozsvár 2007/2008

Tanrend jelentő képző szervek részére

Szakértő díjjegyzék összeállító program

VARIO Face 2.0 Felhasználói kézikönyv

LETÉTKEZELŐ NYILVÁNTARTÁSI RENDSZER

1 Rendszerkövetelmények

91. MP költséghelyek felvitele, 94. MP mozgástípus konfigurálása

ESEMÉNY VEZÉRELT ALKALMAZÁSOK FEJLESZTÉSE I. Bevezetés. Készítette: Gregorics Tibor

Kalandjáték dokumentáció

Számítógépes alapismeretek 2.

Cikktípusok készítése a Xarayában

Felhasználói segédlet a Scopus adatbázis használatához

Virtualoso Meeting Telefonkonferencia Használati Útmutató Belépés a Virtualoso Portal felületére

GoodBill számlázó és kintlévőség menedzselő rendszer

LabVIEW példák és bemutatók KÉSZÍTETTE: DR. FÜVESI VIKTOR

Gráfok 1. Tárolási módok, bejárások. Szoftvertervezés és -fejlesztés II. előadás. Szénási Sándor

QGIS tanfolyam (ver.2.0)

A TERC VIP költségvetés-készítő program telepítése, Interneten keresztül, manuálisan

Vezeték nélküli hálózat

Címzett: Kovács Gézáné Szeged, Híd u. 1. Tisztelt Kovács Gézáné! Örömmel értesítjük, hogy Ön megnyerte nyereményjátékunk 1000 Ft-os díját.

Matlab Fuzzy Logic Toolbox

1. Létező postafiók megadása. ipad menünk felületén válasszuk a Mail opciót, amivel megadhatjuk hozzáadandó postafiókunk típusát.

Átírás:

GráfRajz Követelmények: A GráfRajz gráfokat jelenít meg grafikus eszközökkel. A gráfot többféleképpen lehet a programba betölteni. A program a gráfokat egyedi fájl szerkezetben tárolja. A fájlokból betölthetőek az előre eltárolt vagy a felhasználó által, a grafikus felület keresztül megadott és később fájlba mentett gráfok. Továbbá a programban implementálva vannak a fontosabb gráfelméleti algoritmusok, például különböző típusú fák építése. A felhasználó által megadott csúcspontokból a program folyamatosan építi a kiválasztott típusú fát. Az elkészült gráfokon szemléltethetőek a nevezetes bejárási algoritmusok által generált útvonalak. Alapvető fogalmak: Grafikus eszközök: A program egyszerű grafikai elemekkel fogja ábrázolni a gráfot. A gráf csúcsait egy kör, míg az éleket egy-egy összekötő vonal fogja reprezentálni. Egyedi fájlszerkezet: Az a módszer, amivel a gráf éleit, csúcsait és egyéb adatait (irányítottság, súlyozottság) egyértelműen eltároljuk. Gráf: A gráf dolgok (csomópontok, csúcsok) és rajtuk értelmezett összeköttetések (élek) halmaza. Egy gráfot megadhatunk csúcsainak és éleinek felsorolásával, vagy szemléletesebben egy diagram formájában, ahol a pontok felelnek meg a gráf csúcsainak, az őket összekötő ívek pedig az éleknek. o Irányított / Irányítatlan gráf: Irányítatlan esetben nem tartjuk nyílván az egyes élek irányát, azaz mindkét irányban lehet rajta közlekedni. Irányított esetben, csak a megadott irányba haladhatunk a gráfon ( egyirányú utca ). Így a két összekötött csúcs szülő gyerek viszonyban van. o Súlyozott / Súlyozatlan: Súlyozott esetben az egyes élekhez nyilvántartunk egy számértéket, ami az él súlya vagy más néven költsége lesz. A súly az útkeresési algoritmusokat teheti kifinomultabbá. o Szülő gyerek: Irányított gráf esetén a szülő csúcsból kimenő élen a gyerek csúcsba érünk, ahonnan nem léphetünk vissza (hacsak nincs visszafelé is vezető párhuzamos él). o Párhuzamos él: Párhuzamos élnek nevezzük azokat az éleket, melyek ugyanazt a két csúcsot kötik össze. o Hurok él: Hurok élnek nevezzük, azt az élt melynek kiindulási csúcsa megegyezik a cél csúcsával. o Egyszerű gráf: Az egyszerű gráfban nincsen se hurok, se párhuzamos él. o DAG: Directed Acyclic Graph, azaz irányított, körmentes gráf. o Körmentes gráf: A körmentes gráfban nem tudunk olyan utat kijelölni, melyben érintenénk egy korábban már érintett csúcsot. o Út: A gráf adott csúcsából induló csúcs él csúcs sorozat. o Fa: A fa olyan gráf melynek bármely két pontját egy és csakis egy útvonalon köthetjük össze, azaz körmentes összefüggő gráf. o Összefüggő gráf: Az összefüggő gráf bármely csúcsából bármely csúcsába vezet út.

Nem funkcionális követelmények A program dinamikus reagál a felhasználói interakcióra. A gráf szerkesztésekor a változások azonnal megjelennek az ábrán. A gráf szerkesztő bolondbiztos azaz nem engedélyez érvénytelen műveletet, szigorúan betartja a szabályokat, melyek a gráf tulajdonságának megmaradásért felelősek. Pl.: súlyozott gráfba nem enged új élt felvenni súly megadása nélkül. A program Java nyelven van implementálva, ezért futtatásához szükséges a Java virtuális gép legfrissebb verziója. Használati eset modellek: uc Primary Use Cases Betöltés fájlból Módosítás Felhasználó Rajzolás Betöltése fájlból: A felhasználó egy már korábban a programmal elkészített gráfot tölt be és jelenít meg. Betöltés után a felhasználó módosíthatja, majd újra elmentheti a gráfot. Előfeltétel: Szükséges egy érvényes, azaz a tárolási konvenciónak megfelelő fájl, amit a program beolvashat. Utófeltétel: A gráfban a program nem engedélyez olyan módosításokat mellyel a gráf korábban beállított tulajdonságai sérülnek. Pl.: Ha csak pozitív él költségek érvényesek, akkor a felhasználó ne vehessen fel negatív költségű élet. Rajzolás: A betöltött gráfot a program megjeleníti. Módosítás: A gráfon módosításokat hajthat végre a felhasználó, melyek automatikus újrarajzolást indítanak, így a változások azonnal megjelennek az ábrán.

uc Primary Use Cases Új gráf létrehozása Rajzolás Felhasználó Paraméterek beállítása Gráf építése Új gráf létrehozása: A felhasználó új gráf építésébe kezdhet. Beállítja a kezdeti paramétereket, melyek a gráf típusát határozzák meg, majd felveszi a gráf csúcsait és éleit. Előfeltétel: - Utófeltétel: A bevitt adatoknak megfelelőnek kell lenniük a paraméterül adott gráf típusához. Pl.: Egyszerű gráf esetén nem engedélyezi a program a hurok és párhuzamos élek felvételét. Paraméterek beállítása: A gráf paramétereinek megadása. Irányítottság, súlyozottság stb Gráf építése: A felhasználó egyenként felveszi a gráf elemeit, melyek folyamatosan megjelennek az ábrán.

Képernyő terv custom Primary Forms Új gráf Súlyozott Irányított Fa Fő képernyő Menü Új gráf Gráf betöltése Gráf mentése Rajzterület Gráfban lévő csúcsok és élek Csúcsok OK Mégse Csúcsot töröl Szabványos fájlkezelő ablak Gráf módosítása Élek Új él Költség Csúcsból Csúcsba Új csúcs Címke OK Mégse Élet töröl Új csúcs Új él OK Mégse Gráf adatai Irányítottság Súlyozottság Fa-e? Élek száma Csúcsok száma Gráf paraméterei A program egy főablakból és négy párbeszédablakból fog állni. A főablak nagy részét a gráf kirajzolási terület foglalja el. Továbbá itt érhetőek el a gráf módosító funkciók, melyek egységesen az ablak jobb szélére vannak csoportosítva. A párbeszédablakok funkciói: Új gráf létrehozása: A meglévő betöltött gráfot a program bezárja és egy új, üres gráfot hoz létre helyette. A régi gráf bezárása előtt természetesen a program lehetőséget ad annak mentésére. Él hozzáadása: Az aktuálisan megnyitott gráfhoz adhat hozzá új élt. Ha a gráf súlyozott, meg kell adni egy súlyt, illetve minden esetben kötelező megadni a kiindulási és a cél csúcsot. Ha a gráf nem irányított, akkor a forrás és cél csúcs egyenrangúnak tekinthető és ezt a program figyelembe is veszi, de a párbeszéd ablak azonos lesz az irányított esetben látottal. Csúcs hozzáadása: A programnak meg kell adni egy csúcsazonosító címkét. Gráf mentése / betöltése: A program megjelenít egy Swing keretrendszerbe beépített, szabványos fájlkiválasztó ablakot, melyben elvégezhetjük a szükséges műveletet.

Szakterületi osztálydiagram class Szakterületi Main GraphLogic Graph Tree NewGraphWindow 0..* 0..* GrafRajzWindow 0.. Edge Node NewNodeWindow 0.. MyCanv as 0.. NewEdgeWindow Algorythms Main: A program belépési pontja. Egy példányt fog tárolni a program ablakból. GrafRajzWindow: Sztereotípia: vezérlő / határ Példány: grafrajzwindow Feladat: Megjeleníti a fő program ablakot. Szülő ablaka a párbeszédablakoknak. Tartalmazza a rajzterületet és a program logikájáért felelős osztály példányát.

MyCanvas: Ős: java.awt.canvas Példány: canvas Feladat: egyszerű grafikus elemekkel megjeleníti a gráfot GraphLogic: Ős: - Sztereotípia: vezérlő Példány: graphlogic Feladat: Tárolja a gráfot. Kezeli a fájlműveleteket. Előkészíti a gráfot a kirajzoláshoz. Graph: Ős: - Sztereotípia: konténer Példány: graph Feladat: Gráf reprezentáció. Tárolja a gráf csúcsait és éleit. Éllistás megvalósítást használ. Node: Ős: - Sztereotípia: konténer Példány: - Feladat: Egyszerű adatszerkezet, amely a gráf egy csúcsát reprezentálja. Egy azonosítót és egy listát tartalmaz a kimenő élekről. Edge: Ős: - Sztereotípia: konténer Példány: * Feladat: Egyszerű adatszerkezet, amely a gráf egy élét reprezentálja. Egy célcsúcsot és egy súlyt tartalmaz (ha a gráf súlyozott).

Tree: Ős: Graph Sztereotípia: konténer Példány: graph Feladat: Egy speciális gráf, a fa reprezentációja. A Graph ősosztálytól annyiban tér el, hogy a gráf szerkesztése közben nem engedélyez olyan műveletek, melyek megsértenék a gráf fa tulajdonságát. Pl.: nem enged kört létrehozni a gráfban. NewGraphWindow: Példány: new Feladat: Új gráf létrehozásakor megjelenő párbeszéd ablak. A gráf paramétereit lehet beállítani benne. NewNodeWindow: Példány: new Feladat: Csúcs hozzáadáskor megjelenő párbeszéd ablak. Megadhatjuk benne a csúcs azonosítóját. NewEdgeWindow: Példány: new Feladat: Él hozzáadásakor megjelenő párbeszéd ablak. Megadhatjuk benne az él költségét, forrás és cél csúcsát. Algorythms: Ős: - Sztereotípia: függvénykönyvtár Példány: - Feladat: Statikus könyvtár mely gráf algoritmusokat tartalmaz.