You are not logged in.

#26 2020-05-19 07:49:48

miche101
Member
Registered: 2008-12-16
Posts: 1,024

Re: PTNA - News: ÖPNV-Analyse

ToniE wrote:

Was fehlt (mir) noch?

jetzt ist die Relation-Analyse dem GTFS fast gleich auf wink Jetzt wäre noch ein GPX download mit und ohne Shape noch fehlen.. und die Möglichkeit des Routings

Eventuell könnte man bei der Relations-Analyse gefundenen Fehler auch in der Karte darstellen hmm

Offline

#27 2020-05-19 08:02:10

miche101
Member
Registered: 2008-12-16
Posts: 1,024

Re: PTNA - News: ÖPNV-Analyse

...obwohl der Radschluss wäre geschafft wenn man aus den OSM Daten einen GTFS Feed generieren kann smile ...aber wir nähern uns..

bei GPX... wäre wpt <= OSM platform(wenn nicht vorhanden, sollte nicht sein wink dann stop_position), rte-Teil <= OSM stop_position, bzw. wenn nicht vorhanden Platform. Prüfen anhand des name=*  wink

Offline

#28 2020-05-19 11:27:57

ToniE
Member
From: Ottobrunn, Bayern, Germany
Registered: 2016-06-13
Posts: 376

Re: PTNA - News: ÖPNV-Analyse

... über diese Dinge kann man reden smile

Im Moment bin ich gerade fertig geworden einen / zwei Fortschrittsbalken zu realisieren und den Code so umzustellen, dass der Browser nicht blockiert, wenn's mal etwas länger dauert.

Jedes Member wird durch eine Funktion analysiert, die durch einen setTimeout( handleMember, 0 /* msec Pause */, ++index ) am Ende einer solchen Analyse für das nächste Member gestartet wird.

Dadurch bleibt der Browser offen für Mouse-, Keyboard-, ... und andere Events. Viel langsamer wird's dadurch insgesamt nicht, aber "bedienbar" big_smile

S 1 in München geht noch recht flott

ICE von Hamburg über Berlin nach München dauert mit 1315 Ways schon recht lange, aber der Browser und das Map-Fenster können noch bedient werden und man kann der Liste der Ways beim Wachsen zusehen wink

Aber, wie schon einmal geschrieben: für große Relationen braucht man Geduld, bei kleineren merkt man kaum eine Verzögerung.

Last edited by ToniE (2020-05-19 11:36:22)


Alle Edits meiner Kommentare sind (nur) Typofixes, wenn nicht explizit anders angegeben.

Offline

#29 2020-05-20 17:40:12

miche101
Member
Registered: 2008-12-16
Posts: 1,024

Re: PTNA - News: ÖPNV-Analyse

ToniE wrote:

dass der Browser nicht blockiert, wenn's mal etwas länger dauert.

...a ja des Problem kenn ich das muss man asynchron laden smile

aus:

request.open( "GET", url, false );

wird:

request.open( "GET", url, true );

In der Funktion wird dann geregelt.. was passiert wenn sich er Status änder....

request.onreadystatechange = function() {

bzw. was passiert wenn es fertig geladen ist:

if ( request.status === 200 ) {

smile Der Balken ist gut cool

Offline

#30 2020-05-20 18:05:24

ToniE
Member
From: Ottobrunn, Bayern, Germany
Registered: 2016-06-13
Posts: 376

Re: PTNA - News: ÖPNV-Analyse

Die GET-requests sind eigentlich nicht das Problem.

Den ersten (großen) GET request ans API von OSM mache ich tatsächlich asynchron. Der dauert meist so zw. 50 und 150msec und liefert fast alles was ich an Nodes, Ways und so weiter brauche - bis auf (Plattform-)Relationen.

Die weiteren kleineren GET-requests mache ich dann synchron, weil's von der Programmablauflogik so am einfachsten ist.
Hierbei sind in der Regel Platform-Relationen nachzuladen (wenig Daten), das synchrone Laden ist nicht so kritisch.

Kritisch war die z.T. recht lange Analyse, d.h. das Abarbeiten der Member-Liste der route-Relation - nachdem die Daten schon da sind.
Diese Arbeit wurde in einer langen for-Schleife gemacht, bei der der Browser bzgl. dieses Fensters blockiert ist.

Durch das setTimeout( function(), 0, parameter-der-function ) erfolgt lediglich eine kurze Unterbrechung des JS-Programms (re-scheduling), so dass der Browser Mouse-, Keyboard-, und andere Events bearbeiten kann. Dadurch kann man den Browser im Fenster wieder bedienen (in die Karte rein-zoomen, ...) während die Analyse weiter läuft.

Pro Timeout bearbeite ich mittlerweile 5 Member (nicht mehr nur einen), was insgesamt etwas schneller läuft, ohne die Bedienbarkeit des Browsers zu sehr zu stören. Das hatte ich auch mit 50, 20 und 10 Member versucht, aber das war beim Rein-Zoomen in die Karte dann nicht mehr flüssig.

Der Balken ist ein HTML5 feature "<progress id="analysis" value=x max=100></progress> <span id="analysis_data">x<</span> %" und 'x' wird mittels JS aktualisiert.

Zusatz: der Balken funktioniert nur, wenn man asynchron (d.h. bei mir mit setTimeout) arbeitet.

Last edited by ToniE (2020-05-20 18:11:03)


Alle Edits meiner Kommentare sind (nur) Typofixes, wenn nicht explizit anders angegeben.

Offline

#31 2020-05-20 18:20:25

miche101
Member
Registered: 2008-12-16
Posts: 1,024

Re: PTNA - News: ÖPNV-Analyse

ToniE wrote:

Die weiteren kleineren GET-requests mache ich dann synchron, weil's von der Programmablauflogik so am einfachsten ist.
Hierbei sind in der Regel Platform-Relationen nachzuladen (wenig Daten), das synchrone Laden ist nicht so kritisch.

ok.. drum.. is ja irre... klingt sehr kompliziert hmm

Offline

#32 2020-05-20 18:30:11

ToniE
Member
From: Ottobrunn, Bayern, Germany
Registered: 2016-06-13
Posts: 376

Re: PTNA - News: ÖPNV-Analyse

miche101 wrote:

Den ersten (großen) GET request ans API von OSM mache ich tatsächlich asynchron. Der dauert meist so zw. 50 und 150msec und liefert fast alles was ich an Nodes, Ways und so weiter brauche - bis auf (Plattform-)Relationen.

Um präzise zu sein: - bis auf die Member der (Plattform-)Relationen.

Die brauche ich aber um sie zu zeichnen und um an eine lat/lon-Koordinate zu kommen (1. Node oder 1. Node vom 1. Way der Relation)

miche101 wrote:

ok.. drum.. is ja irre... klingt sehr kompliziert hmm

Schon irgendwie, spannend allemal bis es funktioniert. Man muss sich loslösen vom sequentiellen Abarbeiten des Codes ...
Für die synchronen GET-requests ist mir auch gerade was eingefallen Richtung asynchron.

Last edited by ToniE (2020-05-20 18:30:32)


Alle Edits meiner Kommentare sind (nur) Typofixes, wenn nicht explizit anders angegeben.

Offline

#33 2020-05-24 10:43:43

miche101
Member
Registered: 2008-12-16
Posts: 1,024

Re: PTNA - News: ÖPNV-Analyse

Wieder was interessantes gefunden: Hier darf der Bus gegen Einbahnstr. fahren smile

Stimmt das tagging so:
https://www.openstreetmap.org/way/255282608

Offline

#34 2020-05-24 11:31:39

ToniE
Member
From: Ottobrunn, Bayern, Germany
Registered: 2016-06-13
Posts: 376

Re: PTNA - News: ÖPNV-Analyse

miche101 wrote:

Wieder was interessantes gefunden: Hier darf der Bus gegen Einbahnstr. fahren smile

Stimmt das tagging so:
https://www.openstreetmap.org/way/255282608

Korrekt, zumindest was PTNA angeht.


Alle Edits meiner Kommentare sind (nur) Typofixes, wenn nicht explizit anders angegeben.

Offline

Board footer

Powered by FluxBB