Both sides previous revision
Poprzednia wersja
Nowa wersja
|
Poprzednia wersja
Nowa wersja
Both sides next revision
|
pl:miw:miw08_prolog_javasockets [2008/06/13 11:38] miw |
pl:miw:miw08_prolog_javasockets [2008/06/13 14:20] miw |
| |
| |
====== Sprawozdanie ====== | |
| ====== Sprawozdanie (jeszcze niepełne)====== |
| |
===== Uruchamianie projektu ===== | ===== Uruchamianie projektu ===== |
| |
| |
| |
==== Serwer (Prolog) ==== | ==== Serwer (Prolog) ==== |
- Uruchom serwer na porcie 12345: <code> :- create_server(12345). </code> | - Uruchom serwer na porcie 12345: <code> :- create_server(12345). </code> |
- Serwer oczekuje na połączenia. | - Serwer oczekuje na połączenia. |
| |
| |
==== GUI (Java) ==== | ==== GUI (Java) ==== |
| - Ściągnij archiwum: {{:pl:miw:varda-gui-1.0.tar.gz|:pl:miw:varda-gui-1.0.tar.gz}} |
| - Rozpakuj: <code> tar -zxvf varda-gui-1.0.tar.gz </code> |
| - Wejdź do katalogu: <code> cd varda-gui-1.0/bin </code> |
| - Uruchom program: <code> java -cp ../lib/jgraph.jar:./ varda_gui.Main </code> |
| |
| ===== Protokół komunikacyjny ===== |
| Wymiana informacji odbywa się na zasadzie komunikacji synchronicznej. Serwer prologowy jest odpytywany przez cześć javową. W poniższej tabeli przedstawiony jest protokół komunikacji. |
| |
| FIXME Ujednolicenie i dopracowanie protokołu |
| |
| ^ Nazwa ^ Zapytanie (od strony javy) ^ Odpowiedź (od prologa) ^ |
| | Pobieranie atrybutów finalizowalnych FIXME Poprawić | <code>list_finalizeables.</code> | <code>[[el1],[el2],[el3]]</code> | |
| | Pobieranie atrybutów splitowalnych FIXME Poprawić | <code>list_splitables.</code> | <code>[[el1a,el1b],[el2a,el2b],[el3a,el3b]]</code> | |
| | Pobieranie połączeń (zależności) | <code>list_deps.</code> | <code>[[el1]-[el2],[el2]-[el3],[el3]-[el4,el5]]</code> | |
| | Pobieranie atrybutów z pliku .svg | <code>list_items_from_svg.</code> | <code>el1@el2@el3,el4@</code> | |
| | Pobieranie współrzędnych z pliku .svg | <code>list_coords_from_svg.</code> | <code>12.5,23.4@12.0,34.5@</code> | |
| |
| FIXME Można połączyć ze sobą pobieranie atrybutów i współrzędnych. Są one pobierane z tego samego pliku za pomocą poleceń z konsolowych //cat//, //grep//, //cut//, //tr//. |
| |
| Pobieranie atrybutów: |
| <code>cat therm-model.svg | grep 'class="node"' | cut -d '>' -f3 | cut -d '<' -f1 | tr [:cntrl:] @</code> |
| |
| Pobieranie współrzędnych: |
| <code>cat therm-model.svg | grep -A1 'class="node"' | grep polygon | cut -d '"' -f4 | cut -d " " -f1 | tr [:cntrl:] @</code> |
| |
{{:pl:miw:varda-gui-1.0.tar.gz|:pl:miw:varda-gui-1.0.tar.gz}} | n-ty atrybut na liście atrybutów odpowiada n-tej współrzędnej na liście współrzędnych. |
| |
====== Materiały ====== | ====== Materiały ====== |