[Knooppuntnetwerken] 2020-11-01 Release Knooppuntnet 3.0 + Planner!

Het relatiewindow kent een mouse-over. Als je een relatie in de editmode hebt, kun je je muis op een way of node houden en krijg je in de mouseover de tags van die way of node te zien.

  • Een gpx kan ik in JOSM openen, dat mapt makkelijker, gewoon de ways kiezen die het meest in de buurt komen en geschikt zijn voor wandelen. Voor de Wandelnetkaart moet ik telkens van toepassing wisselen. het zou helpen als ik 2 schermen gebruikte, maar meestal heb ik alleen mijn laptopje.

  • Een oude knooppuntrelatie waar nieuwe knooppunten tussen zijn gekomen moet je inderdaad opknippen. Ik open dan meestal de bestaande relatie, zet daar de nieuwe knooppunten op de juiste plek tussen, en maak dan een kopietje (in dit geval zelfs twee) waarna ik de ref’s aanpas en alleen de daarbij behorende wegen erin laat staan.
    Dus ik hergebruik wel de oude relatie en maak nieuwe erbij.

  • De knooppunten gooi je in de juiste netwerkrelatie. Volgorde doet er in de netwerkrelatie niet toe. De provinciegrenzen zie je in JOSM en in de planners. Een node2node route die de grens overgaat komt in beide netwerkrelaties met als role “connection”. Ik zou daar niet te zwaar aan tillen als dat niet helemaal goed is: als ze maar in een netwerkrelatie zitten, dan gaat er in het renderen en routeren niks mis. Je krijgt alleen een aantal “feiten” in Knooppuntnet. Die moeten dan nog een keer langsgelopen en weggewerkt worden, maar dat wil ik later nog wel eens doen.

  • Ik zie in het relatievenster in JOSM voor knooppunten de de rwn_ref en rcn_ref, en voor de routes de ref. Ik heb geen idee hoe dat geregeld is!

Om te beginnen ga ik er nu vanuit dat de Wandelnetbron juist is. Als ik twijfel probeer ik met satellietbeelden en viewers bevestiging te krijgen. Als er echte recente survey is dan gaat dat natuurlijk voor. Ik denk dat het handigste is om de route wel in te voeren maar met een fixme erop en een note, anders heb je kans dat iemand anders hem alsnog gaat invoeren. Als je zeker weet dat hij ergens niet doorgankelijk is, lijkt me dat daar een onderbreking in de route komt, dat voorkomt dat hij ten onrechte gerouteerd wordt.

Nodes die ik op de bronplanner als “0” (cijfer nul) zie, of splitsingen waar geen node staat, die geef ik rwn_ref “?” . In de ref van de routes komt dan ook een ? te staan. Dat zijn nodes die er al staan, maar de nummers zijn nog niet doorgevoerd in die planner. Een aantal heb ik zelf gesurveyed en vervolgens aangevuld. (Na de supersnelle invoeractie komt dus een lange staart van survey en onderhoud… maar dat is OSM, het vraagt doorlopend onderhoud.)

Ik weet niet precies wat je met "delta maken"bedoelt; we mappen bestaande knooppunten en de routes ertussen, maar we maken geen nieuwe routes.

Op de wandelnetplanner staan ook gebieden met knooppunten die het label “-” hebben. Die bestaan nog niet, ze zijn gepland. Helaas hebben ze die plannen toch al in de planner geïmporteerd. Die moeten we MI niet invoeren. Ik heb Wandelnet en Routemaker hierover gemaild maar (nog?) geen respons gekregen…

Ik ben bezig in Drenthe, maar dat gaat niet met een dusdanige snelheid dat ik dat voor 1 november heb ingevoerd…

Uit de praktijk weet ik dat de routes aan de rand van het netwerk op Wandelnet (met name als er een grote afstand tussen de knooppunten ligt) er niet altijd in de praktijk zijn.

Goed werk!
Drente is volgens mij nog hard bezig met uitrollen, terwijl ondertussen de natuur grootschalig op de schop wordt genomen… dat zal nog wel even duren voordat er een stabiel wandelknooppuntennetwerk in de hele provincie is. Op zich is dat lastig, maar aan de andere kant ook een kans om aktueler te zijn dan de “officiële” datasets.

Dat merk je nu al. Midden-Drenthe en De Wolden hebben al een netwerk, ze zijn nu bezig in gemeente Coevorden, waarvan nu al een deel op OSM staat. Maar om alles te surveyen vergt wel heel veel tijd…

Even verwachtingsmanagement: Ik heb vanwege de persconferentie van Rutte de komende weken een pak extra werk. Ik verwacht dus niet heel veel te kunnen doen (ten zuiden van Amsterdam)

Ik download in JOSM nu alleen met de overpass query:

[out:xml][timeout:90][bbox:{{bbox}}];
(
  way["highway"];
  node["node_network"];
);
(._;>;<<;);
out meta;

Door de extra “<<” in de laatste regel download je ook de relaties waar de ways of nodes lid van zijn.

Iets sneller: als je net een n2n hebt gemaakt, staat die in de relations-tab (rechts bij mij) geselecteerd. Daaronder zit een knop “copy to a new relation”. Scheelt weer de oude sluiten en daarmee foutkansen.

Oh, die ben ik vergeten op de nodes te zetten die ik tot nu toe gemaakt heb…

Ah, ik zit hier met 2 full HD-monitoren (en dat is eigenlijk nog te weinig… JOSM neemt 1½ monitor als je met relaties bezig bent, en wandelnet ook een hele … Geen zin om een 3e monitor er bij te zetten :D)

Hmm, kennelijk heb ik een andere versie van JOSM (15937)… Ik zal eens updaten — Ik heb de JOSM repository toegevoegd aan (k)Ubuntu, nu heb ik ineens versie 17084… Maar in een relatie zie ik nog steeds van nodes alleen het de naam en als ze die niet hebben (zaosl dde meeste wandelnet-nodes) de id, maar niet de ref. Wel kan ik mouseover doen… Interessante verbetering.

Hier wordt verteld hoe je weergave in je selectie-venster kunt aanpassen voor werk aan netwerken:
https://wiki.openstreetmap.org/wiki/User:Polyglot/Some_ways_to_simplify_editing_cycle_node_routes_with_JOSM#Custom_Name_Formatters

Door tms:https://tilecache-routemaker.irias.nl/tiles/opentopo/{zoom}/{x}/{y}.jpg toe te voegen krijg je wel de achtergrond van Wandelnet, de OpenTopo kaart.
Het netwerk zelf zit verpakt in dit JSON bestand: https://wandelnet.routemaker.nl/routemaker/getNetwork, is er een makkelijke manier om dit in JOSM te importeren, anders moet ik er best wel wat tijd in stoppen en kijken of ik het kan omzetten naar een GPX, maar die wordt dan wel groot… Weet iemand welke coördinaten hier worden gebruikt?

Edit: de link werkt zo niet, maar via de netwerk inspector van Firefox kon ik een JSON bestand (7.9MB groot) downloaden:
{“result”:
{“lines”:[
{“id”:214593,“id_from”:237704,“id_to”:239802,“geom”:,“colors”:,“length”:118},
{“id”:320326,“id_from”:324051,“id_to”:324253,“geom”:[[734359.402319394,7054448.42250999],[731776.559447782,7052494.72554625]],“colors”:,“length”:2196},
{“id”:214595,“id_from”:239548,“id_to”:242670,“geom”:[[518736.771684206,6801046.30789553],[518721.829731003,6801031.68634928]],“colors”:,“length”:13},
{“id”:214596,“id_from”:242386,“id_to”:242663,“geom”:[[523055.518566841,6834102.00719725],[521973.158623324,6834901.59839042]],“colors”:,“length”:938},
etc.
},
“pois”:[
{“id”:235813,“geom”:[707381.994243874,6819419.31440245],“name”:“”,“tags”:},
{“id”:235814,“geom”:[713109.177032063,6798292.41316413],“name”:“U74”,“tags”:},
{“id”:315118,“geom”:[676808.709440073,6684580.83039176],“name”:“”,“tags”:},
{“id”:315119,“geom”:[673242.69946271,6670450.96025387],“name”:“72”,“tags”:},
{“id”:235817,“geom”:[488382.555734519,6807159.91663309],“name”:“71”,“tags”:},
{“id”:304170,“geom”:[525043.266837709,6962999.21523556],“name”:“0”,“tags”:},
etc.
}
}

Die achtergrond helpt mij niet, ben ik bang. De JSON zou wel handig zijn, denk ik, als ik hem in porties zou kunnen knippen en inlezen. Ik ben technisch niks waard wat dit betreft, ik heb dus een tool nodig. In de opendata plugin zie ik JSON niet als bestandtype. Jammer want eerder heb ik daar wel shapefiles mee kunnen inlezen.
Dat bleek ook niet echt handig uiteindelijk, want je moet nog steeds alles vergelijken met wat er al is, en alle punten een voor een aanpassen of nieuw invoeren, en alle relaties aanpassen of nieuw invoeren. Eigenlijk heb je het wandelrouteplanner beeld als ondergrond nodig, niet als data.
Dus inderdaad, gpx zou helpen want die kan je veilig inlezen zonder dat het data wordt.

Converteren naar een GPX bestand moet te doen zijn met een simpel python script. Moet ik alleen wel weten hoe ik de coördinaten uit het Json bestand omzet…

Andere vraag: waarom rendert knooppuntnet.nl de route 37-37 niet (hij routeert hier ook niet over)? https://knooppuntnet.nl/nl/route/11525591 Of kan ik hier beter 1 knooppunt van maken dat een stukje weg vaker wordt gebruikt?
Waymarkedtrails doet het wel goed: https://hiking.waymarkedtrails.org/#?map=18!52.7289!6.6336

Als ik in de history van 37-37 kijk, zie ik Fix wrong networktype.
Het kan best dat dat ergens nog in een cache van knooppuntnet.nl rond zwerft
Het beste kun je een issue aanmaken. Dan kan Marc kijken wat er aan de hand is.

Nagekeken in de database: er klopt inderdaad iets niet met deze route in knooppuntnet. Er is iets misgegaan met de bepaling van de kaarttegels voor deze route. Ik zoek het verder uit…

Ik heb ondertussen een GPX-file met alle nodes gegenereerd, hoe is deze het makkelijkst te delen?
Ben nog bezig met een versie waar ook de routes in zijn verwerkt.

Inmiddels is ook het converteren van routes naar GPX gelukt, helaas kan dat niet voor heel NL in één keer (dan worden de knooppunten met een rechte lijn verbonden), maar wel voor vrij grote regio’s.

Hier het stukje python voor de liefhebber:

from pyproj import Transformer
import json

json_file = 'getNetwork.json'
nodes_gpx = 'nodes.gpx'
routes_gpx = 'routes.gpx'

node_network = json.load(open(json_file))

transformer = Transformer.from_crs("epsg:3857", "epsg:4326")

gpx_file = open(nodes_gpx, 'w')
gpx_file.write('<?xml version="1.0" encoding="UTF-8" standalone="no" ?>\n<gpx creator="Python3" version="1.1">\n')
gpx_file.close()

for i in node_network["result"]["pois"]:
    if i["name"] and i["geom"]:
        lat, lon = transformer.transform(i["geom"][0], i["geom"][1])
        gpx_file = open(nodes_gpx, 'a')
        gpx_file.write('<wpt lat="{}" lon="{}"><name>{}</name></wpt>\n'.format(lat, lon, i["name"]))
        gpx_file.close()

gpx_file = open(nodes_gpx, 'a')
gpx_file.write('</gpx>')
gpx_file.close()

gpx_file = open(routes_gpx, 'w')
gpx_file.write('<?xml version="1.0" encoding="UTF-8" standalone="no" ?>\n<gpx creator="Python3" version="1.1">\n')
gpx_file.close()

nodes = {}
for i in node_network["result"]["lines"]:
    if i["geom"]:
        gpx_file = open(routes_gpx, 'a')
        gpx_file.write('<trk><trkseg>')
        for j in i["geom"]:
            lat, lon = transformer.transform(j[0], j[1])
            gpx_file.write('<trkpt lat="{}" lon="{}" />'.format(lat, lon))
        gpx_file.write('</trkseg></trk>\n')
        gpx_file.close()
        
gpx_file = open(routes_gpx, 'a')
gpx_file.write('</gpx>')
gpx_file.close()

Het JSON bestand is te downloaden met Shift + F5 in Firefox, inzoomen op de wenselijke regio, en dan onder Netwerk te dubbelklikken op bestand getNetwork, type json.

Dat ziet er wel handig uit, dank voor het delen.

Sorry maar ik ben hier te blont voor en op mijn leeftijd leer ik niet meer zo makkelijk… Ik heb gewoon echt een gpx nodig als overtrekplaatje.

Kunnen we hier een op-verzoek-keten van maken?

Bijv als ik het gebied van Alkmaar en Z-O daarvan de Schermer vraag, dat jij dat omzet naar GPX en opstuurt naar wandelingen.digitaal@gmail.com , zie je dat zitten of is dat heel veel extra werk?

Dat kan, als men er niet uit komt, kan er altijd een verzoek gedaan worden. Ik heb je ondertussen al wat GPX bestanden gemaild, hoop dat dit de goede regio is.

Ik heb de bestanden binnen, ze tonen prima in JOSM, helemaal goed! Morgen ga ik kijken of ik mijn werkproces er echt mee kan versnellen.

2020-10-15 De routes zijn helaas niet bruikbaar, er staan heel veel lange rechte lijnen die geen echte routes zijn, als je uitzoemt is het hele beeld zwart! Maar het knooppuntenbestand helpt wel. Ik moet even kijken hoe ik ze wat groter in beeld kan krijgen want ze zijn nu heeeeel klein.