[ DeYo @ 27.03.2006. 11:09 ] @
Interesuje me da li je ima onih koji su koristili pakete za graficki prikaz grafova i/ili organigrama. Ako ima, koji su to paketi?

Ja sam koristio JUNG paket (http://jung.sourceforge.net) koji je open source i u principu uopste nije los. Medjutim za aplikaciju koju radim ne odgovara u potpunosti, ima odredjenih nedostataka cijim opisom ne bih da duzim pricu. Podrska za paket je dobra, support forum je prilicno aktivan i ekipa koja radi na paketu konstantno izlazi u susret sa savetima i resenjima. Nazalost u mom slucaju postoji ono "ali".

Takodje, naisao sam na odlican paket yFiles (http://www.yworks.com/en/products_yfiles_about.htm), koji bi mi u potpunosti odgovarao. Jedini problem je sto se on placa, tako da u mom slucaju otpada.

Dakle, da li imate neki predlog za freeware/opencource paket koji bih mogao da probam?
[ DeYo @ 05.04.2006. 14:21 ] @
Pronasao sam paket JGraph (http://www.jgraph.com) koji mi odgovara. Osnovni paket je besplatan dok se dodatni paketi placaju. U dodatne pakete spada i JGaph-LayoutPro koji sadrzi algoritme za pravljenje mapa, medjutim obzirom da se placa moracu bez njega sto nazalost iziskuje dosta fizikalisanja oko kreiranja koda.
[ Java Beograd @ 12.04.2006. 15:58 ] @
Ja u zadnje vreme poprilicno koristim JUNG, i smatram da sam dostigao relativno visok nivo kapiranja njihovih ideja, i nacina kako su sta realizovali. Na zalost to sto radim nije vidljivo na netu jos uvek, ali evo raspolozen sam za caskanje.
[ Java Beograd @ 12.04.2006. 16:00 ] @
A gde je forum za JUNG ?
[ DeYo @ 13.04.2006. 13:36 ] @
Citat:
Java Beograd: A gde je forum za JUNG ?

https://sourceforge.net/forum/forum.php?forum_id=252062
[ DeYo @ 13.04.2006. 13:53 ] @
konkretno, problem zbog kojeg sam ja napustio JUNG:
https://sourceforge.net/forum/...id=1447552&forum_id=252062

Dakle, trebao mi je Layout nalik TreeLayout ali da imam mogucnost vise ulaznih grana u cvor (sto TreeLayout ne dozvoljava). Probao sam sa DAGLayout i to je radilo za pojedinacan applet prilicno korektno (ne bas savrseno, ali podnosljivo). Medjutim problem se javljao u web aplikaciji (WebSphere) u kojoj je applet koriscen, prvi applet bi se kreirao "kako treba" ali na svako sledece ucitavanje bi random faktor potpuni haos napravio (isprepletane grane, nepravilni "nivoi" cvorova..).

Imas li neko resenje za ovaj problem koristeci JUNG?

Ja ga nisam nasao pa sam presao na JGraph koji u free verziji nema ponudjene layoute (u onoj koja se placa ima tacno ono sto meni treba a tamo se zove HierarchicalLayout). Ipak u JGraph moze se tacno definisati polozaj svakog cvora i nije ogranicen broj ulaznih/izlaznih grana. Vizuelno sam za pocetak sam dobio:


[Ovu poruku je menjao DeYo dana 13.04.2006. u 14:55 GMT+1]
[ Java Beograd @ 14.04.2006. 12:07 ] @
Ni ja u JUNG-u nisam nasao odgovarajuci layout za sebe. Zato sam koristio funkciju koja mi omogucava da sam napravim raspored Nodova (vertexa) pa tako imam svu funkcionalnost JUNG-a uz moju kontrolu rasporedjivanja.
Mozes da napises i svoj layout.
[ DeYo @ 14.04.2006. 12:27 ] @
Citat:
Java Beograd: Ni ja u JUNG-u nisam nasao odgovarajuci layout za sebe. Zato sam koristio funkciju koja mi omogucava da sam napravim raspored Nodova (vertexa) pa tako imam svu funkcionalnost JUNG-a uz moju kontrolu rasporedjivanja.
Mozes da napises i svoj layout.
Naravno. Ali, iskreno, u tome sam se prilicno pogubio. U JUNG-u sam stekao utisak da ti za elementarnu "logicku" operaciju treba koriscenje bar 3-4 klase (renderi, dekoratori...). Onda sam naisao na JGraph gde na mnogo lak nacin dobijas direktnu kontrolu nad pozicijama cvorova, labela i grana. Ono sto je ipak moj utisak je da kad jednom odradis ono sto naumis u JUNG-u to posle daje stvarno sjajne rezultate (vizuelno pre svega).
Opet da se vratim na moj problem. Koriscenjem DAGLayout sam ga resio, testirajuci applet samostalno (sa razlicitim ulaznim parametrima) to je stvarno ok radilo. Medjutim onog trenutka kada sam taj applet integrisao u web aplikaciju krenuo je nightmare, gde kao sto mozes da vidis ni sami autori nisu uspeli do kraja da mi pomognu. Pretpostavljam da bih problem resio i u JUNG-u kreiranjem sopstvenog layouta, pri cemu bih eliminisao random faktor i isao na fiksiranje pozicije svakog cvora, ali resavanje na taj nacin mi je ispalo mnogo lakse u JGraph-u.
[ Java Beograd @ 14.04.2006. 15:25 ] @
Pa dobro, može i tako, naravno.
Dakle, bez namere da isterujem ko je u pravu, nego tek radi akademske diskusije, evo opisa kako sam ja to uradio
Code:

// negde gore je layout već sagrađen ...
...
layout.initialize(this.getSize(), new MyVertexLocationFunction(this));
...


I onda ide :

Code:

public class MyVertexLocationFunction extends DefaultSettableVertexLocationFunction {

    private Point centerPoint;
    public MyVertexLocationFunction(JComponent parentContainer) {
        centerPoint  = new Point(parentContainer.getWidth()/2, parentContainer.getHeight()/2);;
    }
    public Point2D getLocation(ArchetypeVertex v) {
                         // po nekom algoritmu, se već nađe pozicija
        return new Point(xLoc, yLoc);
    }
}

[ DeYo @ 18.04.2006. 12:47 ] @
Hm... Ne mogu tacno da se setim ali mislim da sam nesto nalik ovome pokusavao.

Ako budem imao vremena da se vracam na deo aplikacije u kojem se koristi graf kontaktiracu te. Trenutno sam zadovoljan resenjem u JGraph-u, ali kao sto vec rekoh JUNG mi vizuelno deluje lepse pa bih rado promenio.