BRouter Profil Syntax

Ich mach dazu einen eigenen Thread auf, weil’s im Ursprungsthread off-topic ist.

Vielen Dank für die Anregung, ich hab’ sie aufgegriffen, “if then else” eingebaut und noch mehr “syntactic sugar” und ich glaube tatsächlich, dass man es so besser lesen kann.

In Summe sind die Erweiterungen jetzt:

  • Kurschreibweise für ve-oderte Lookup-Matches: highway=primary|primary_link
  • “if then else ” alternativ zu “switch ”
  • optionale Klammern um jeden (zusammengesetzten) Ausdruck
  • “=” Zeichen beim assign-operator: "assign =
  • true und false als logische Konstanten

Das trekking-Profil auf Github habe ich entsprechend umgestellt: https://github.com/abrensch/brouter/blob/master/misc/profiles2/trekking.brf

Was ich dabei gemerkt habe ist, dass man eigentlich JEDEN logischen Ausdruck auch als “else if” Konstrukt schreiben kann, und bis auf paar wenige Stellen, wo das sperrig wäre, hab’ ich’s umformuliert.

D.h. die polnische Notation, also das eigentlich schwer zu verdauende an dieser Syntax, ist zwar nach wie vor das Grundprinzip, aber man sieht sie fast kaum noch. In der nächsten Version von BRouter wird das dann so drin sein, und ich hoffe tatsächlich, dass so die Einstiegshürde sinkt und ein grösserer Kreis sich da ran traut, solche Profile anzupassen (vielleicht auch Rollstuhlfahrer?)

Irgendwo bist Du ein Meister im Bereich Off-Topic, ich antworte also mal in diesem letzten Off-Topic-Spinoff-Thread…

ja, mit der Syntax waren Deine Anmerkungen der Trigger und nein, die Version 1.2, wo das drin ist, die gibts noch nicht.
BRouter-Web ist aber diesbezüglich schon aktualisiert.

Mit dem Aussehen, klar, da haben die Masken-Bildner alles gegeben um mich wie Mitte vierzig aussehen zu lassen, dachte, das wirkt seriöser, als wenn da ein zwanzig-jähriger Leistungssportler steht…

Einführung in Pfadsuche hatte ich mal eine deutschsprachige Diplomarbeit verlinkt, da sind auch Kontraktions-Hierarchien erklärt, ganz anschaulich, ob richtig weiss ich aber nicht: http://kola.opus.hbz-nrw.de/volltexte/2012/789/pdf/thesis.pdf

Danke.

Also wie es die Verteilung der Knotennummerierung entstehen, habe ich nicht wirklich verstanden.

Es scheint sich um eine Ausdünnung des Wegenetzes zu handeln.

Also wenn die Wege, die von einem Punkt ausgehen, auf Punkte treffen, zwischen den keine direkte Verbindung besteht, dann wird ein Weg zwischen den eigentlich nicht verbundenen Punkten gebildet. Der Weg enthält die Summe der Kosten der Wege, die die zwei Punkte über den anderen Punkt verbinden.

Jetzt bin ich mir nicht sicher, ob dass gewünschte Ergebnis ist oder bei deinem Beispiel auf Seite 38 so aussieht, dass das rauskommen soll.

Wenn es zwischen zwei Punkten mehrere Verbindungen gibt, die über nur einen weiteren Punkt laufen und zwischen den Punkten es keine direkte Verbindung gibt, dann wird die billigste Weg zwischen den beiden Punkten herausgefunden.

Wenn jetzt die Nummern bei deinem Beispiel auf S. 38 anders angeordnet wären, käme da immer z.B für den Weg zwischen 3 und 6 der Wert 3 raus oder könnte da auch mal die vier rauskommen.

Was würde eigentlich beim fünften Schritt passieren, wenn die Verbindung zwischen 8 und 7 größer als vier wäre?