https://gluonhq.com/products/scene-builder/
https://www.youtube.com/watch?v=qn2tbftFjno Die module-Datei ist bereits im Repository. Das müsst ihr also nicht machen!
http://www.ba-horb.de/~pl/Programmieren/Projekt_Dijkstra.pdf
- File -> Project Structure (Str + Alt + Umschalt + S)
- Project Settings -> Artifacts
- auf + klicken
- JAR -> From modules with dependencies
- Main als Main-Class auswählen
- OK
Optional
- Name vergeben
- Output directory anpassen
- Build -> Build Artifacts
- Richtiges auswählen -> Build
fertig, .jar liegt jetzt im Output-Verzeichnis
Das XML mit dem Autobahnnetz ist über die Overpass API entstanden.
Man kann es sich selbst über den "Overpass Turbo" holen.
https://overpass-turbo.eu
Dafür muss man folgenden Query-Code auf dem seitlichen Feld ausführen:
[out:xml][timeout:1000];
// fetch area “germany” to search in
{{geocodeArea:germany}}->.searchArea;
// gather results
(
// query part for: “highway=motorway”
node["highway"="motorway"](area.searchArea);
way["highway"="motorway"](area.searchArea);
relation["highway"="motorway"](area.searchArea);
node["highway"="motorway_link"](area.searchArea);
way["highway"="motorway_link"](area.searchArea);
relation["highway"="motorway_link"](area.searchArea);
);
out body;
>;
out skel qt;
Im Gegensatz zum Namen dauert das aber seine Zeit. Also Geduld.
Wenn er fertig ist auf "Export" klicken und die .osm herunterladen.
- Datenstruktur erstellen
- OSM einlesen und in Graph übertragen
- Algorithmen implementieren.
- Routenausgabe implementieren
- Graphische Implementierung (Algorithmus ist fertig. Die Nutzung muss natürlich noch implementiert werden.)
- Hilfsstruktur für mehrere Start- und Zielknoten
- Karte zoombar machen -> "Mitscrollen" vermeiden, Drag & Drop einbauen
- Zeitmessung
- Was mit mehreren Namen bei einer Ausfahrt machen? (z.B. Kreuz München-West;München-Lochhausen)
- Dijkstra und A* werfen Exception bei gleichem Start und Ziel (evtl. gezielt abfangen) -> Bedenken, ob bei Zwischenzielen Kreise möglich sein sollen
- Zwischenziele
- mehrere Ziele in bester Reihenfolge (evtl. mit Endziel)