LordMajer / SieciPetriego

Projekt- metody formalne
0 stars 0 forks source link

Pytania - modele #1

Open mjuraszek92 opened 9 years ago

mjuraszek92 commented 9 years ago

Kilka pytań do modeli. W GUI się muszę jeszcze wczytać...

Klasa Edge:

  1. Czy pole condition będzie nam potrzebne? W tym momencie go nie używamy i wydaje mi się, że nie ma sensu go trzymać.
  2. Po co konstruktor, który przyjmuje Edge skoro nie używa tego argumentu? Ma to być jakoś rozwijane?

Place i Transition:

  1. Id-ki dla miejsc i przejść są kolejnymi intami. Nie lepiej było by przyjąć numeracje taką jak na zajęciach i numerować kolejno P1, P2 ... (dla miejsc) i T1, T2 ... (dla przejść)? Wtedy byśmy mogli wyświetlać je w GUI i moglibyśmy usunąć nadmiarowe pole name.
  2. Co oznacza pole type w klasie Place? Bo jedyne rozróżnienie miejsc ma miejsce w sieciach kolorowanych, których nie robimy. Jeśli o to chodziło to go usunę, ale wolę się upewnić ;)
LordMajer commented 9 years ago

ad.1 Nie jest nam potrzebne... wcześniej było tego jeszcze więcej bo praktycznie zaimplementowałem wszystko co robiliśmy na zajęciach ale jak Pożycki powiedział że mamy tylko sobie wybrać to część pousuwałem. ad.2 Nie jestem pewny... chyba gdzieś tego używałem... nie wiem czy przy edycji. Jak usuniesz i będą błędy to znaczy że potrzebne.

ad.3 Jak wolisz... to już działa. Dałem tam TreeMap bo dzięki id utrzymuje je w kolejności. ad.4 Tak to dokładnie o to chodziło... typ miejsca :)

mjuraszek92 commented 9 years ago

Ok, to pozmieniam. Znalazłeś jakieś informacje jak zmienić kształt wierzchołka z domyślnego prostokąta na coś innego?

mjuraszek92 commented 9 years ago

@LordMajer Trzeba zmigrować to co zrobiłeś używając biblioteki jGraph(przestarzałej i nierozwijanej od kilku ładnych lat) na rozwiązanie oparte o jej następcę jGraphX. Wrzuciłem przykładową klasę. Jak widać da się w niej bez problemu zmienić kształt wierzchołka. Domyślnie też wyświetla toString() dla krawędzi i ma wiele innych fajnych bajerów.

mjuraszek92 commented 9 years ago

Teraz graf można też tworzyć za pomocą myszy i klawiatury:

Krawędzie dodaje się przeciągając linię ze źródłowego wierzchołka do docelowego.