Was hindert Dich denn daran, den Pfad anzugeben? Sollte problemlos funktioneren.
Weiter oben gibt es diese Zeile:
–dem-poly= C:\MyOsmTopo\KARTEN-BAU\Polygon\unterfranken.poly
Da wäre wohl ein Leerzeichen zuviel hinter dem “=”
ich hab das mit verschiedenen Variationen getestet , alles lief in leere , dann hab ich das mal direkt eingegeben im code , so
–dem-poly=unterfranken.poly , hat auch nicht funktioniert . Erst als ich in das richtige Verzeichnis die unterfranken.poly Datei reinkopiert hab funktioniert es so --dem-poly=unterfranken.poly funktioniert.
gruss
Am Format nix - ist ja auch einfach genug. Nur stimmen die Konturen nicht, da hier Bereiche verwendet werden, die eben nicht in Unterfranken liegen:
Aber das ist für das Problem von mapguru nicht relevant.
Gruss
walter
Ich sehe gerde in deiner Kommandozeile folgendes: –dem-poly= C:\MyOsmTopo\KARTEN-BAU\Polygon\unterfranken.poly
Mach doch mal dieses Leerzeichen nach dem “=” weg.
Gruss
walter
Ich habe da ja eine andere Vermutung, wenn man sich die Doku nochmal genauer ansieht und es Wort für Wort nimmt:
Es gibt ja unter Entwicklern unterschiedliche Auffassungen darüber, was denn ein “Filename” genau ist, ist es nur der Dateiname (mit oder ohne Endung), oder ist es der FullyQualifiedName?
Ich würde es so sehen, dass --dem-poly ja ein Unterkommando zu --dem ist. Letzteres hat bereits eine Verzeichnisangabe und dann könnte es schon Sinn machen, wenn das Poly eben in genau diesem Verzeichnis liegen sollte.
Näheres wird uns aber wohl nur der Entwickler selbst sagen können.
Naja, aber ich denke der Umstand ist ja schon hinlänglich bekannt, dass geofabrik eher gröbere Ausschnitte verwendet, oder?
Nur mal zur Erklärung, was passiert, wenn ein Leerzeichen hinten dem “=” steht so wie hier:
java -jar dist\mkgmap.jar --dem-poly= d:\OSM\areas.poly
Das Programm merkt sich, das --dem-poly ohne Parameter angegeben wurde und verarbeitet dann die Datei d:\OSM\areas.poly als Eingabe im OSM Format. Da die Datei nichts xml-artiges enthält, gibt es schon beim ersten Zeichen einen Fehler.
D:\mkgmap>java -jar dist\mkgmap.jar --dem-poly= d:\OSM\areas.poly
Time started: Wed Feb 20 09:00:41 CET 2019
Error at line 1, col 1
Bad file format: d:\OSM\areas.poly
Error parsing file
Liege zur Zeit mit Grippe flach, da mache ich aus Prinzip keine Änderungen. Wenn ich wieder durchgegrünt bin, werde ich die Doku verbessern, damit klarer wird, dass bei --dem-poly ein Pfad erwartet wird.
Edit: Copy+Paste Fehler im Dateinamen
Ja , nach mehren Tests hab ich doch die Lösung , der Hinweis mit den Leerzeichen brachte mich auf den richtigen weg.
muss mal kurz weg , werde später berichten.
Ausschneiden funktioniert jetzt nach Polygon , Koordinaten oder einfach ohne ausschneiden dann wird die komplette Karte erzeugt !
gute Besserung !!!
gruss
Will den Thread nicht kapern, also kurz und dann ist Schluss damit.
Klaro, die Polys der Geofabrik sind manuell erstellt worden und geben nur sehr grob den Umriss an. Nur in der Süd-Östlichen Ecke hat "jemand" das Poly sehr exakt an den Grenzverlauf angepasst und in der von mir angezeigten Ecke die falsche Grenze erwischt. Das hat mich halt stutzig gemacht. "Meine" Polys aus der Boundaries Map werden automatisch mit der PostGIS-Funktion ST_Buffer() erstellt, was Vor- und laut Frederik auch Nachteile hat.gruss
walter
Bingo! So wird aus einem Leerzeichen doch noch ein Lehrzeichen
Gute Besserung und Grüße
walter
ihr kennt das toto bestimm , da kann man alle Variationen an Polygon holen , von der Stadt , region bis zum Land einfach alles so wie in den OSM definiert ist.
von da hab ich das Steigerwald Polygon !
https://peteris.rocks/blog/openstreetmap-administrative-boundaries-in-geojson/
gruss
Naja, “gehen” tut das.
aber
-
Step 1: find relation ID
Go to openstreetmap.org and search for your city or neighborhood
or
Go to nominatim.openstreetmap.org and search for your city. -
Step 2: generate polygon in GeoJSON
Go to polygons.openstreetmap.fr and enter the ID of the relation.
-
Explore results
geojson.io is an easy to use tool to visually see the generated output file on a map.
Tja, wenn man Zeit hat
https://wambachers-osm.website/boundaries
Gruss
walter
Gut sind die Tips, wie man ein GeoJson in Javascript einbindet.
ich kenne deine Seite , war da auch schon öfter , aber irgendwie klemmt die oder ich versteh die Logik nicht !
Ich gebe einen Ort ei zb. Schweinfurt und dann erscheint ein Fenster , ich klicke auf goto aber es passiert nichts !
entweder mach ich was falsch oder es klemmt an der Seite .
gruss
Wie ihr richtig erkannt habt lag es in erster Linie an diesen verdammten Leerzeichen !!!
Ich hatte zwar noch ein weiteres Problem da ging es darum wie der mkgmap Kommando aus VBA erzeugt wird . Da hatte ich Anführungszeichen gesetzt und das mag VBA da nicht . Das aber nur der Vollständigkeit halber !
ich hab dann den VBA code in eine Variable gepackt und dann war das Problem mit den Anführungszeichen auch gelöst
So schaut es jetzt aus, aus den VBA code wird der mkgmap Kommando generiert. So funktioniert es !
Vba Code:
–dem-poly=" + boundingbox3 + "
mkgmap:
–dem-poly=C:\MyOsmTopo\KARTEN-BAU\Polygon\hassbergepoly.poly
gruss
Da ist was dran
Die SQL-Query, die das immer flott erledigt hat, ist fürchterlich langsam geworden. Ich versuche das gerade in den Griff zu bekommen.
Gruss
walter
ps: derzeit geht das mit Schweinfurt richtig flott - aber nicht immer.
Das wäre klasse , den die Seite wäre sehr hilfreich !
Wenn du da was repariert hast , würdest du da kurz mal ansagen
gruss
für interessierte so funktioniert es jetzt.
Die Berechnungszeit hab ich aus den Video genommen !
Von wo die Rohdaten zum erstellen der Karte bezogen werden soll , lokal oder aus dem Netz , Optik , Inhalt , Abdeckung sowie die Einbindung in Bascamp sowie die zu erzeugenden Kartenformate sind frei wählbar.
Es sind auch die Abstufungen der Höhenlinien frei wählbar , aber nicht in allen einstelligen, nur wen die Höhenlinien aus den .hgt generiert werden.
Alles ist möglich was die Einstellungen und Auswahlmöglichkeiten hergeben , sofern es logisch ist.
Die Einstellungen werden auch auf Plausibilität geprüft .
Kartenprojekte können auch gespeichert werden , damit die schnell geladen werden können ohne große Handarbeit bei der Konfiguration.
http://spinner24367.bplaced.net/poly-Koo1/poly-Koo1.swf
gruss
Erstens, dass mit dem Leerzeichen wurde schon in #30 erwähnt
Zweitens, VBA hat keine Probleme mit Anführungszeichen, die kann man escapen/maskieren
Da ich diesbzgl. eher die Selbsthilfe zur Hilfe anbiete hier ein paar Infos: Es macht schon einen Unterschied zwischen & und + als Verkettung/Verknüpfung von Strings (Text), des Weiteren macht es auch einen Unterschied zwischen einem Doppelten Anführungszeichen " und einem einfach, dem Apostoph ’
Infos dazu findest du in jedem beliebigen VBA Forum.
PS: Und wie weiter oben erwähnt würde ich dir trotzdem dringend empfehlen, Pfadangaben, wie z.B. eben bei -dem-poly in Anführungszeichen zu setzen, weil ich jetzt schon weiß, dass du dann, wenn irgendwann mal ein Leerzeichen irgendwo im Pfad bzw. Dateinamen steckt, du hier wieder auf der Matte stehst
Ich kann nur das berichten was ich in heute selbst getestet und erkannt hab , klar mit eurer Hilfe!
dafür danke ich allen Helfern!
Im Beitrag 14 hab ich den Vba Code veröffentlicht.
Das dies kein mkgmap Kommando sein kann , erkennt man an dem Syntax.
–dem-poly = “C:\MyOsmTopo\KARTEN-BAU\Polygon” + "" + Cells(9, 8)
glglgl hat auch in Beitrag 16 gefragt was das für eine Sprache ist , das hab ich im Beitrag 17 auch beantwordet.
Genau diese Schreibweise funktioniert nicht mit VBA und es ist auch egal ob da ein + Oder & Zeichen eingefügt wird.
Auch das Weglassen des Leerzeichen funktionierte erst mal nicht .
Nehme ich die Anführungszeichen raus gilt die Zuweisung als Variable die keinen Wert enthält.
Ich hab dann mal in dem erzeugten Mkgmap Kommando den Pfad und den Namen des Polygon in Klartext eingefügt , also nicht erzeugen lassen , dazu das Leerzeichen raus genommen und das hat dann auch funktioniert.
Apostoph ’ war nie ein Thema.
Im Beitrag 47 hab ich berichtet wie ich den vba Code verändert hab und wie es funktioniert. So wird ein Funktionierendes mkgmap Kommando generiert.
In diesen Beitrag hab ich auch erwähnt das ich eigentlich zwei Probleme zu lösen hatte!
Ist doch klar wenn es Klemmt das ich wieder nachfrage
gruss
Hmm, also bei mir funtzt das, mit Cells und den Anführungszeichen rund um dem-poly
Sub makeCmd()
Cells(11, 1) = "java -Xmx1500M -jar " & Cells(2, 2) & "\mkgmap\mkgmap.jar" _
& " --gmapi" _
& " --index" _
& " --housenumbers" _
& " --bounds=C:\MyOsmTopo\KARTEN-BAU\DATA\bounds-latest" _
& " --style-file=C:\MyOsmTopo\KARTEN-BAU\styles\" & Cells(5, 2) _
& " --generate-sea:multipolygon,extend-sea-sectors" _
& " --name-tag-list='name:de,name,int_name'" _
& " --family-id=1" _
& " -n MyOsmTopo-test" _
& " --add-pois-to-areas" _
& " --draw-priority=29" _
& " --latin1" _
& " --remove-short-arcs" _
& " --route" _
& " --dem-poly=""" & Cells(8, 2) & "\" & Cells(9, 2) & """" _
& " --dem=" & Cells(7, 2) _
& " --dem-dists=9942,9942,9942,13248,44176" _
& " --show-profiles=1" _
& " --overview-dem-dist=88368" _
& " --overview-mapname=MyOsmTopo-test" _
& " --series-name=MyOsmTopo-test" _
& " --mapname=50001001" _
& " C:\MyOsmTopo\Kartenprojekt_MyOsmTopo-test\50001*.osm.pbf " & Cells(3, 2) & "\" & Cells(6, 2)
End Sub
java -Xmx1500M -jar C:\MyOsmTopo\KARTEN-BAU\TOOLS\mkgmap\mkgmap.jar
--gmapi
--index
--housenumbers
--bounds=C:\MyOsmTopo\KARTEN-BAU\DATA\bounds-latest
--style-file=C:\MyOsmTopo\KARTEN-BAU\styles\OFMap-Style-Typ3d_neu241118
--generate-sea:multipolygon,extend-sea-sectors
--name-tag-list='name:de,name,int_name'
--family-id=1
-n MyOsmTopo-test
--add-pois-to-areas
--draw-priority=29
--latin1
--remove-short-arcs
--route
--dem-poly="C:\MyOsmTopo\KARTEN-BAU\Polygon\unterfranken.poly"
--dem=C:\MyOsmTopo\KARTEN-BAU\hgt\Dem_hgt_DACH_Slow_Hoehenmodel_Nasa
--dem-dists=9942,9942,9942,13248,44176
--show-profiles=1
--overview-dem-dist=88368
--overview-mapname=MyOsmTopo-test
--series-name=MyOsmTopo-test
--mapname=50001001
C:\MyOsmTopo\Kartenprojekt_MyOsmTopo-test\50001*.osm.pbf C:\MyOsmTopo\KARTEN-BAU\TYP_Files\ofm_dbnl-3d.typ
Und wenn man das ganz als Function programmiert
Function makeCmd(toolsdir As String, stylefile As String, dempolypath As String, dempoly As String, dempath As String, typpath As String, typfile As String) As String
makeCmd = "java -Xmx1500M -jar " & toolsdir & "\mkgmap\mkgmap.jar" _
& " --gmapi" _
& " --index" _
& " --housenumbers" _
& " --bounds=C:\MyOsmTopo\KARTEN-BAU\DATA\bounds-latest" _
& " --style-file=C:\MyOsmTopo\KARTEN-BAU\styles\" & stylefile _
& " --generate-sea:multipolygon,extend-sea-sectors" _
& " --name-tag-list='name:de,name,int_name'" _
& " --family-id=1" _
& " -n MyOsmTopo-test" _
& " --add-pois-to-areas" _
& " --draw-priority=29" _
& " --latin1" _
& " --remove-short-arcs" _
& " --route" _
& " --dem-poly=""" & dempolypath & "\" & dempoly & """" _
& " --dem=" & dempath _
& " --dem-dists=9942,9942,9942,13248,44176" _
& " --show-profiles=1" _
& " --overview-dem-dist=88368" _
& " --overview-mapname=MyOsmTopo-test" _
& " --series-name=MyOsmTopo-test" _
& " --mapname=50001001" _
& " C:\MyOsmTopo\Kartenprojekt_MyOsmTopo-test\50001*.osm.pbf " & typpath & "\" & typfile
End Function
und es dann in einer Zelle wie folgt einsetzt
=makeCmd(B2;B5;B8;B9;B7;B3;B6)
kommt das selbe Ergebnis raus, nur eben dann direkt in dieser Zelle, dann kann man das auch mal Copy&Paste rausnehmen und direkt in die Cmd.exe Box kopieren und ausführen