@macnetz
Jo, der iss bei mir auch drin.
Ich werde mal was basteln. Allerdings muß ich erst die 39 Layers der Isola Capraia zu ordnen. Vorher macht das keinen Sinn.
Ich stelle es mir so vor:
Nachdem alle 4 Kacheln von GM als .mp gespeichert wurden,
- Headeranpassung bis [END-IMG ID] frei definierbar.
- anpassen des korrekten Typs, da GM alles als RGN40 darstellt.
- variable Levelanpassung anhand der Kategorie
z.B. alle Roads werden auf Level 0 gesetzt
z.B. alle Höhenlinien werden auf Level 2 gesetzt
Jeder einzelne Layer könnte man auch anpassen. Aber bei 39 Stück?
Label würde ich auch gerne vergeben, wird aber etwas schwierig, da man z.B. bei den Höhenlinien die Differenz zur nächsten benötigt. Hast Du nen Tip?
Mir fällt jetzt auf die schnelle nix mehr ein. Habt Ihr noch andere Vorschläge?
Garmin fenix 7X und epix Gen 2 im Test
-
-
Hallo Buschhupe,
Du kommst zum selben Ergebniss wie ich. Siehe mein letztes Posting. Wir brauchen zunächst die von mir rudimentär und nur als Maske vorgeschlagene Konvertierungstabelle. Lade die dir runter und vervollständige die. Wenn jeder einige dxfTypen zusammensucht und die entsprechenden cgpsmapper-typen raussucht geht es schneller. Wir können ja dann unsere Ergebnisse austauschen. Nochmal mein Vorgehen, (für Anton). Die dxf aus GM mehr oder weniger unbearbeitet exportieren als mp- Dann hast du exakt das von Buschhupe zitierte mp-file. Du darft es keinesfalls mit Mapedit öffnen, da geht viel verloren, sondern nur mit Texteditor betrachten. Da steht dann wie schon Buschhupe feststellt meist:
[RGN40]
Type=801D ...usw. Das heißt: der exakte Layername des dxf wird als Typ reingeschrieben. Den muss man austauschen gegen Type=0x00??.
Und das muss in der von mir vorgeschlagenen Tabelle stehn. Um die Tabelle mit den passenden cgpsmapper-typen zu bestücken, sollte man aber unbedingt die im Usermanual cgpsmapper enthaltenen Typen verwenden. Stehen auf Seite 84 des Usermanuals beginnend. Die Mapedit- typen sind viel begrenzter. CGPSMapper kennt mehr als Mapedit. Dann öffne ich mit dem VB Programm das MP file und suche nach allen Strings 801D usw und tausche die aus entsprechend der Tabelle. Aber es soll nicht nur ein einfacher Austausch werden, das ginge ja mit der Replace -Funktion jedes Editors, sondern die zu löschenden Layer(=dxf Type), die mit den Text und Schraffur-Typen, sollen von Programm gelöscht werden, das ist schon mehr Programieraufwand. Man muss Beginn und Ende des Kartenobjektes ermitteln. Meine vorgeschlagene Tabelle ist unvollständig. Selbstverständlich müssen die Buchstaben (D,T C,V) noch reingeschrieben werden. Und natürlich muss das dazu passende cgpsmapper -Type ermittelt werden. Ich habe die 1. Spalte einfach aus den Codici de Layer kopiert; da waren keine Buchstaben dran. Also ergänzen. Damit arbeiten kann man erst, wenn alle vorkommenen dxf -typen drin stehen. Ich bin mit meinem VB Programm ganz gut vorwärtsgekommen und die Tabelle soll dann vom Programm eingelesen werden. Da die TABELLE extern erstellt wird, könnte man bei anderen Karten das selbe Programm auch verwenden, nur muss die Tabelle angepasst werden.
@ buschhupe. Das ist ja astreines VB, was Du anbietest, Frage : wie bist Du auf das Label=656 m gekommen ? Wo steht das im Ausgangsmaterial? Es ist ja die Höhenangabe. Und dafür habe ich in meinem Musterfile 216110 nichts gefunden. Dein Script extrahiert alle Höhenlinien. okay, aber jede hat eine ander Höhe, und das Problem habe ich noch nicht gelöst. Es sei denn, man editiert den "Namen" in GM. Der "Name" in GM wird dann zum Label der Höhenlinie. Ist aber Handarbeit und bei der Stückzahl eine Sklavenarbeit. Lieber verzichte ich drauf.Kannst du einen Hinweis geben ?
NB.:im scribt ist bei Treesize das Kommentar semikolon noch drin.morgen1
-
@macnetz
Jo, der iss bei mir auch drin.
Ich werde mal was basteln. Allerdings muß ich erst die 39 Layers der Isola Capraia zu ordnen. Vorher macht das keinen Sinn.
Ich stelle es mir so vor:
Nachdem alle 4 Kacheln von GM als .mp gespeichert wurden,
- Headeranpassung bis [END-IMG ID] frei definierbar.
- anpassen des korrekten Typs, da GM alles als RGN40 darstellt.
- variable Levelanpassung anhand der Kategorie
z.B. alle Roads werden auf Level 0 gesetzt
z.B. alle Höhenlinien werden auf Level 2 gesetzt
Jeder einzelne Layer könnte man auch anpassen. Aber bei 39 Stück?
Label würde ich auch gerne vergeben, wird aber etwas schwierig, da man z.B. bei den Höhenlinien die Differenz zur nächsten benötigt. Hast Du nen Tip?
Mir fällt jetzt auf die schnelle nix mehr ein. Habt Ihr noch andere Vorschläge?
Hallo Buschhupe, während ich den letzten Beitrag schrieb, hast du Deinen von mir unbemerkt gepostet, da ist dann einiges überholt. Nen Tipp hab ich : Schreib dir ein cgpsmapper Dictionary-file. Das regelt ein für alle mal die Verteilung der Kartenobjekte auf die Level. Es wird dann generell nur der Level0 editiert. Den Rest macht dictionary. Den Header kannst du in GM als Templete definieren. Das spart auch schon Arbeit.
Die Darstellung RGN40 ist korrekt, Die wenigen Polygone sind nicht verwendbar. Es sind tatsächlich nur linien drin. Aber man kann geeignete Linien zum Polygon deklarieren. Siehe Anton. Ganz ohne Polygone wird die Karte sehr fade.
morgen1morgen1
-
Datenschutz ist uns & Euch wichtig, daher verzichten wir auf Bannerwerbung & Web-Analysetools! Um das Forum zu unterstützen bitten wir Euch über diesen Link: bei Amazon zu bestellen....
Für Euch ist das nur ein Klick, uns hilft es das Forum langfristig und werbefrei für Euch zu betreiben! Vielen vielen Dank... -
morgen1
Jo, reines VB in Access. Reicht für meine Zwecke ...
Das ist schon einfach, wenn ich beim Export zur .mp deklarier, was drin stehen soll und was nicht. Wie Du ja selbst bemerkt hast, ist nix mit Replace, wenn ich den Layer nicht darstellen will.
Ich mach im Prinzip ein recompile der .mp mit denen Daten, die ich haben will.
Die Höhe steht - wie Du bemerkt hast - nicht drin. Die war nur als Beispiel gedacht. Man müßte anhand der Koordinatendifferenz irgendwie die Höhe ausfindig machen.
Vielleicht weiß Anton mehr ...
Das einfachste ist natürlich den Label leer zu lassen.
Es sind nicht nur Polyline´s in den Layer enthalten, sondern auch Polygone.
Die darf man natürlich auch nicht vergessen. -
Hallo Buschhupe, während ich den letzten Beitrag schrieb, hast du Deinen von mir unbemerkt gepostet, da ist dann einiges überholt.
So isser halt ...
Nen Tipp hab ich : Schreib dir ein cgpsmapper Dictionary-file. Das regelt ein für alle mal die Verteilung der Kartenobjekte auf die Level. Es wird dann generell nur der Level0 editiert. Den Rest macht dictionary. Den Header kannst du in GM als Templete definieren. Das spart auch schon Arbeit.
Die Darstellung RGN40 ist korrekt, Die wenigen Polygone sind nicht verwendbar. Es sind tatsächlich nur linien drin. Aber man kann geeignete Linien zum Polygon deklarieren. Siehe Anton. Ganz ohne Polygone wird die Karte sehr fade.
morgen1
Ich hatte mal mit einer build.ini gearbeitet. Klappte ganz gut. Polygone (auch wenn Sie nicht benutzt werden), werde ich vorsehen. Ich kenn halt nur die 4 Kacheln vom testen. Man weiß ja nie, wie es in anderen Kacheln aussieht.
Für den Effekt sind Polygone schon schön. Das Problem ist aber, daß man erst die einzelnen Linien sauber verbinden müßte, damit man ein Polygon auf Textebene draus macht. Man kann zwar in GM combimed sagen, bleiben aber immernoch einen Haufen übrig. Ist nicht das wahre ...
Im Prinzip bräuchte man eine Fill-Funktion in GPSMapedit, die zwei nahe liegende Linien gleicher Art zu einer verbindet.
Jetzt wo ich alles geschrieben habe ... ärgerlich:
Öffne mal die .dfx im HexEditor und ersetze 801D durch 0x21. Speichere ab und öffne die Datei in GM
/Edit
Schade, daß der GM aus einem x ein X macht ... -
Bei den 4 Kacheln der Isola Capraia werden folgende Layer verwendet:Hallo Buschhupe.
die Liste der D-Datenlayer ist viel kürzer (Layer in Klammer sind unnötig):
(101D - ?Road)
102D - ?Road
107D - ?Raod
108D - ?Road
201D - Building (Polygon)
205D - Building (Polygon)
207D - Building (Polygon)
216D - Building (Polygon)
302D - River
305D - Shoreline
310D - Wasserbecken (Polygon)
501D - Mauer
504D - Trockenmauer
506D - Stützmauer
606D - Felsen
801D - Intermediate Contour Line
802D - Minor Contour Line
(914D - Diagonale)Grüsse - Anton
-
Datenschutz ist uns & Euch wichtig, daher verzichten wir auf Bannerwerbung & Web-Analysetools! Um das Forum zu unterstützen bitten wir Euch über diesen Link: bei Amazon zu bestellen....
Für Euch ist das nur ein Klick, uns hilft es das Forum langfristig und werbefrei für Euch zu betreiben! Vielen vielen Dank... -
@macnetz
Vielen Dank für die Daten.
@morgen1/macnetz
Testobjekt immernoch die 4 Kacheln der Isola Capraia. ~7,3 MB als .mp
Meine Routine steht schon. Hab jetzt 6 Layers ersetzt und die .mp frisch erstellt. Dauer ~ 7s. Bei allen 39 Layer (0x000a Fakes) dauerts ~20s.
Das .mp ist wie folgt aufgebaut:
;Type=0x000a
[RGN40]
Type=0x000a
Levels=2
Data0=(42.9991517,9.8323922),(42.999145,9.9157199),(43.0491497,9.9157265),(43.0491471,9.8323931),(42.9991517,9.8323922)
[END]
/Edit
Die Rechenzeit wird sich etwas erhöhen:
Die Type´s sind teilweise doppelt vorhanden sind. Und da muß ich vorher abfragen, ob Polyline, Polygone oder Point.
Da ich die Levels auch setzen will, wird es ebenfalls etwas mehr zu rechnen.
Hab jetzt übers WoEnde keine Zeit und wird bestimmt Mitte der nächsten Woche, bis ich Euch was bieten kann ... -
Leute seid mir nicht böse, ich verschiebe das jetzt mal ins Karten-Bastel-Forum. Passt wohl besser dort hin....
-
@webGandalf
Ordnung muß sein.
@all
Ist die Anzahl der Layer der .mp von Bedeutung?
Ich habe das mal mit eingebaut; man kann das bei Bedarf ein-/ausschalten.
Verlängert den Import schon beachtlich, da bei jedem Treffer eins dazu addiert wird.
Hier mal ein Überblick der 4 Kacheln isola Capraia
1.Spalte Layer
2.Spalte Anzahl in der .mp
0x17 30
1001T 51
1002T 21
1003T 223
1004T 57
1005T 33
1006T 39
1007T 313
1008T 758
1009T 688
1010T 573
1012T 78
1014T 2287
1015T 108
101D 93
102D 575
103D 374
106D 3
107D 519
108D 51
111D 3
127D 3
128S 9
201D 181
201V 1227
202D 3
202V 33
203D 9
203S 18
203V 48
205D 93
207D 48
216D 24
216V 69
302D 122
302S 71
303D 9
304D 3
305D 90
307D 95
307V 54
310D 24
312S 6
313S 27
501D 74
501V 67
502D 15
502V 42
504D 2502
504V 2206
506D 53
506V 528
601V 169
605S 6
606D 12498
606V 588
701D 232
704S 78
729S 98
801D 110
802D 455
804S 20131
907S 156
914D 48
999D 418
/Edit
Das Menü zum Bearbeiten der eingelesenen .mp ist fertig.
Anbei mal ein Screenshot ... -
Datenschutz ist uns & Euch wichtig, daher verzichten wir auf Bannerwerbung & Web-Analysetools! Um das Forum zu unterstützen bitten wir Euch über diesen Link: bei Amazon zu bestellen....
Für Euch ist das nur ein Klick, uns hilft es das Forum langfristig und werbefrei für Euch zu betreiben! Vielen vielen Dank... -
-
Respekt was hier am entstehen ist!
Ich habe zwar absolut keinen Durchblick mehr aber ich hoffen, jemand schreibt eine Anleitung wie man mit Hilfe von globalmapper und dem Toll von Buschhupe Karten erstellt.
Ich blicke es jedenfalls nicht mehr obwohl ich versuchhe dranzubleiben.
vektorraser -
@vektorraser
gaaaanz einfach:
Wenn man in Globalmapper eine DXF als mp exportiert sieht das mp-File so aus:
[RGN40]
Type=801D
Levels=2
Data0...
Bei dem Tool muß man einmal den type 801D als Höhenlinie deklarieren. Anschließend wird das automatisch geändert. Sieht dann so aus:
;Type=0x0021
[RGN40]
Type=0x0021
Levels=2
Data0...
Die Zuordnung 801D --> 0x0021 muß nur einmal geschehen. Wenn ich nun eine zweite .mp mit ebenfalls 801D einlese, nimmt mir Access die arbeit ab. -
Datenschutz ist uns & Euch wichtig, daher verzichten wir auf Bannerwerbung & Web-Analysetools! Um das Forum zu unterstützen bitten wir Euch über diesen Link: bei Amazon zu bestellen....
Für Euch ist das nur ein Klick, uns hilft es das Forum langfristig und werbefrei für Euch zu betreiben! Vielen vielen Dank... -
morgen1, macnetz
Ich denke, daß ich einen Weg gefunden habe, die einzelnen Stücke des Layers als ganze Polyline/Polygone zu deklarieren.
Immernoch beim Beispiel der Isola Capraia.
In Zeile 137666:
[RGN40]
Type=305D
Levels=2
Data0=(43.049041,9.835552),(43.0491007,9.8356717),(43.049153,9.8357835),(43.0491959,9.835872),(43.0492354,9.835919),(43.0492733,9.8359118),(43.0492567,9.8358521),(43.0492443,9.8357408),(43.0492788,9.8356845),(43.0492921,9.8356769),(43.0493015,9.8356951)
[END],
In Zeile 137672:
[RGN40]
Type=305D
Levels=2
Data0=(43.049435,9.8358287),(43.0494824,9.8358242),(43.0495626,9.8357529),(43.0496503,9.8356766),(43.049742,9.8355822),(43.0498221,9.8355109),(43.049925,9.8354348),(43.0500315,9.8353768),(43.0501285,9.8353368),(43.050212,9.8353224),(43.0502575,9.8353205),(43.0504486,9.8353566),(43.0503559,9.8355983),(43.0503993,9.8356273),(43.050492,9.8353779),(43.0510523,9.8357395),(43.0511349,9.835844),(43.0512195,9.8359408),(43.0513472,9.8361002),(43.0514429,9.8362255),(43.0515105,9.8363169),(43.0515423,9.8363767),(43.0515722,9.836434),(43.0516447,9.8366211),(43.0515842,9.8368606),(43.0506373,9.8370234),(43.0506165,9.8370205),(43.0505863,9.837002),(43.0505657,9.8369759),(43.0505507,9.8369473),(43.0505351,9.8367481)
[END]
Wenn ich die rotmarkierten Bereiche lösche, dann wird aus 2 Polyline´s eine einzige. Damit die einzelnen/gleichen Layer sauber addiert werden können, müssen sie in chronologischer Reihenfolge eingelesen werden.
Ohne jetzt nachgeschaut zu haben, vermute ich mal, daß die Darstellung auf Textebene dies hergibt. Im obigen Beispiel hätte ich eine gerade von 18m eingezeichnet.
Es funktioniert wirklich nur, wenn die chronologische Reihe was GPSMapedit hergibt, eingehalten wird. Ist erstmal alles zusammengesetzt - als einzelne Polyline, spielt es keine Rolle, wo sich der Standort im Textfile befindet.
Sollte die Theorie der Praxis entsprechen, ist der Ablauf kein großes Hexenwerk. -
Sollte die Theorie der Praxis entsprechen, ist der Ablauf kein großes Hexenwerk.
Hallo Buschhupe,
auf diese Weise kann man unterbrochene Linien zusammenfassen. Auch gestrichelte Wege kann man so zu einer Linie machen.
aber:
es gibt keinen Layer der nur ein einziges getrenntes Objekt enthält. Selbst bei der Shoreline sind oft vorgelagerte Inseln/Felsen dabei.zu MPEdit:
Mit deiner automatischen Trennung der Layer wären wir einen grossen Schritt weiter. Ich schau es mir morgen mal an.Grüsse - Anton
-
@macnetz
Es lies mir einfach mal keine Ruhe und ich hab die Shoreline 305D mal einfach addiert. Es sind nicht nur die vorgelagerten Inseln, leider sind auch die Shorelines nicht chronologisch. Grob zu 80% stimmts ja. -
Datenschutz ist uns & Euch wichtig, daher verzichten wir auf Bannerwerbung & Web-Analysetools! Um das Forum zu unterstützen bitten wir Euch über diesen Link: bei Amazon zu bestellen....
Für Euch ist das nur ein Klick, uns hilft es das Forum langfristig und werbefrei für Euch zu betreiben! Vielen vielen Dank... -
morgen1, macnetz
Es funktioniert wirklich nur, wenn die chronologische Reihe was GPSMapedit hergibt,
Hallo Buschhupe, das wird bestimmt nicht so sein. Die Reihenfolge wird nicht stimmen. Du must die Reihenfolge neu zusammensetzen. Und den Algorythmus dazu habe ich im letzten posting vorgeschlagen. :Zuerst die entsprechenden dxf-typen isolieren und in eine zb.B. Exceltabelle einlesen. Jede Zeile ein Kartenelement mit den meist wenigen Koordinatenpaaren. Als Anfangselement das mit dem süd-westlichsten Koordinaten(sind am kleinsten) und dann die Zeile suchen, mit dem nächst höheren Wert. Ein Ausschlußkriterium definieren, um sicherzustellen, daß der Abstand nicht zu groß ist weil es dann vielleicht zu einer anderen Straße gehört und die Zeilen der Tabelle vertauschen, so daß das gefunden auf das vorhergehende folgt . Wenn alle Zeilen durchlaufen sind, sind damit die koordinatenpaare geordnet und können wieder zurück in die mp geschrieben werden. Problem ist noch die Reihenfolge innerhalb der Zeile. Es ist nicht bekannt, ob das erste oder das letzte Koordinatenpaar das richtige ist. Man muss allso das erste und das letzte auf Annäherung prüfen und gegebenenfalls umstellen, also rückwärts durchlaufen. Die durchgehende Polyline wird immer in der Reihenfolge der Koordinatenpaare gezeichnet. Wenn Das Ausschlußkriterium zutrifft heist das, es muss eine zweite Straße gezeichnet werden, dann geht es eben wieder durch die Schleife. Welchen numerischen Wert das Ausschlußkriterium haben muss, muss man mal an typischen Beispielkacheln nachmessen. Also wie groß so im allgemeinen die Lücken zwischen den gestrichelten Linien sind. Die Lücken sind bei verschiedenen Typen auch unterschiedlich, sollte man also typspezifisch vorgeben können. Bezogen auf Deine Shoreline könntest Du damit erkennen, ob die Shoreline zu einem kleinen Inselchen gehört oder zur Hauptinsel. Die Sortiererei könnte man vermutlich auch mit einem Excelmakro machen.
Ich finde Deine Datenbank eine großartige Idee, ist wahrscheinlich viel schneller, als meine Vorstellung, daß mit Visual basic zu sortieren. Leider kommt noch der Startfehler. Werde nachher mal die neue version ausprobieren. Es wäre hilfreich die mdb auf den ftp zu stellen,Bei Rapidshare muss ich immer erst die 4 Katzen suchen, bis der Download klappt.
morgen1 -
morgen1
Ich habe sie auf den ftp geschoben.
Feststellen konnte ich, daß die Daten in GPSMapedit nicht in chronologischer Reihe sind. Dann habe ich die Daten frisch sortiert:
- einmal nach Lat des ersten Koordinatenpaares
- einmal nach Lon des ersten Koordinatenpaares
- einmal Lat / Lon dividiert.
Ergebnis in allen Fällen unbefriedigend.
Innerhalb einer Data=0 Reihe kann der Startwert am Schluß oder am Ende liegen. Die Werte zwischendrin spielen keine Rolle und dürfen auch nicht verändert werden. Manchmal geht ja auch die Linie wieder zurück.
Folglich muß man die Sortierung anhand des 1. Koordinatenpaares und des letzten Koordinatenpaares vornehmen. Um ein Paar z.B. (43.04943,9.83583)mit einem anderen Koordinaten (43.04948,9.83583) zu vergleichen benötige ich eine eindeutige Zahl. Deswegen war mein Gedanke, daß ich einfach teile. -
Folglich muß man die Sortierung anhand des 1. Koordinatenpaares und des letzten Koordinatenpaares vornehmen. Um ein Paar z.B. (43.04943,9.83583)mit einem anderen Koordinaten (43.04948,9.83583) zu vergleichen benötige ich eine eindeutige Zahl. Deswegen war mein Gedanke, daß ich einfach teile.
@BuschhupeDie eindeutige zahl ist : Differenz der Lat-werte ² +Differnz der Lon-werte ². Am Beispiel: (absolutwert, Differenz kann ja auch negativ sein)Vergleichswert =|(43,04943-43,04948)|hoch 2 +|(9,83583-9,83583)|hoch 2. Der kleinste Wert ist der nahegelegenste Punkt. Innerhalb des mp-files werden dieKoordinatenpaare in der Reihenfolge von links nach rechts dargestellt. Bei den dxf-Koordinatenpaaren der einzelnen Strichlein, weis man aber nicht, wie die Reihenfolge ist im Vergleich zum benachbarten Strichlein. So könnte es sein das Strichlein 1 von links nach rechts und das benachbarte Strichlein von rechts nach links gezeichnet ist. Falls man die Reihenfolge ungeprüft übernimmt wird das eine verrückte Linie. Deshalb muss man prüfen ob das erste oder letzte Koordinatenpaar näher am Ende des vorhergehenden Strichleins liegt. Wenn man das dann weis, kann kann man die Koordinatenpaare entweder von vorn oder hinten beginnend aneinanderreihen. Falls der Vergleichswert das Ausschlußkriterium übersteigt, heist das : die Linie ist zu Ende und noch nicht benutze Koordinatenpaare gehören zu einer anderen Linie. Dann fängt man halt eine neue Linie an und sucht weiter. Der zahlenmäßige Wert des Ausschlußkriteriums ist schwierig festzulegen. Man müßte in Beispielkacheln mal nachmessen, was so verwendet wird.
Ich konnte jetzt Deine Datenbank erfolgreich laden und ein mp-file einlesen. Einen Wunsch dazu : Falls das einzulesende mp-file keinen Header hat, funktioniert es nicht. Nun haben aber die von GM exportieren je nach Exporteinstellung keinen Header. Könntest Du das ändern, so daß auch bei fehlendem Header das Laden möglich ist ? Oder wo ist der Code einzusehen, daß ich es selbst ändern kann. Wenn ich den Scripteditor mit ALT+F11 öffne, finde ich nichts. Ist die ID-Nummer im Header immer die gleiche ?. Das würde dann Probleme geben. Ich kann Dir ein paar Codezeilen zukommen lassen, wie man die ID-Nummer in der Registry speichert und bei jeden Laden um 1 ändert, Damit hat dann jedes File seine unverwechselbare ID.
Hast Die die Koordinatenpaare in einer Exceltabelle vorliegen?. Falls ja , wie erzeugst Du die bzw. welche Struktur hat die. Wenn ich die Struktur kenne und eine Beispieltabelle von Dir auf dem ftp ist, könnte ich mal versuchen eine Function in vbs zu schreiben, die das machen soll. Den Code kannst Du dann vielleicht bei Dir einbauen. Wenn die Tabelle aber nicht extern zu bearbeiten geht, sondern nur innerhalb Access hat es wahrscheinlich keinen Sinn. Ich habe zwar mit Access noch nicht gearbeitet, sollte aber ähnlich wie Excel und Word sein und da ist der Scripteditor von Visual Basic entlehnt und der Code ist fast 100 Prozent identisch.
In GM kann man die Vertices anzeigen lassen. Anfang bzw. Ende haben dann einen roten oder grünen Punkt. Das hilft aber Codemäßig auch nicht weiter. Ist nur zur Illustration.
Nochmals danke für Deine Arbeit, wenn das alles noch eingebaut ist, ist es ein erstklassiges Werkzeug. Dann muss ich noch rausfinden wie man das im Batchmodus starten kann, schon schon gäbe es eine 'oneclick' - Konvertierung. Nur Zeit müsste ich haben, um da dran bleiben zu können.
auf dem ftp liegt in meinem Ordner noch eine neue Karte, wenn Du die brauchst , bedien dich.
morgen1 -
Datenschutz ist uns & Euch wichtig, daher verzichten wir auf Bannerwerbung & Web-Analysetools! Um das Forum zu unterstützen bitten wir Euch über diesen Link: bei Amazon zu bestellen....
Für Euch ist das nur ein Klick, uns hilft es das Forum langfristig und werbefrei für Euch zu betreiben! Vielen vielen Dank... -
Ich konnte jetzt Deine Datenbank erfolgreich laden und ein mp-file einlesen. Einen Wunsch dazu : Falls das einzulesende mp-file keinen Header hat, funktioniert es nicht.
Müßte eigentlich klappen. Gerade bei mir getestet.
Wenn ich den Header komplett losche, steht im Header-Feld nur [RGN] drin.
Ist noch ein Bug.
... daß ich es selbst ändern kann. Wenn ich den Scripteditor mit ALT+F11 öffne, finde ich nichts. Ist die ID-Nummer im Header immer die gleiche ?.
Nö, die wird anhand des mp´s eingelesen. Beim Beenden der Datenbank wird nur das akt. File gespeichert. Neues Laden kickt die Speicherung.
Die Datenbank ist schreibgeschützt. Änderungen und Einsicht in den Code sind nicht möglich.
Das Headerfeld kannst Du nach deinem belieben bearbeiten. Access prüft beim Speichern eines neuen Files nicht, ob der Header stimmt. Das komplette Header-Feld wird per print ausgegeben.
Hast Die die Koordinatenpaare in einer Exceltabelle vorliegen?. Falls ja , wie erzeugst Du die bzw. welche Struktur hat die ..
Wenn Du ins Datenbankfenster zu den Tabellen wechselst, oder die Datenbank mit gerdückter Shifttaste startest, kannst Du die Tabellen einsehen und exportieren.
Die Tabelle [GARMIN_TYPE] beeinhaltet die Types aus GPSMapEdit.
Die Tabelle [MP Layers] beinhaltet Deine erstellten Types.
Vielen Dank für das Beispiel mit der Berechnung. Was meint Ihr: Reicht es , wenn ich das Anfangspaar und das Schlußpaar einer Reihe vergleich/berechne?
Ich überlege mir gerade, wie man das machsen soll, wenn Anfangs- und Schlußwert nicht genommen werden ...
Für die shoreline habe ich mal die Anfangswerte und die Schlußwerte extrahiert. Die Quaddrierung ist nun relativ einfach, wenn es sich um die richtigen Werte handelt.
Die Sortierung macht Access für mich.
Ich habe Dir die Tabelle auf den Server geschoben.
/Edit
Von 85x Shorlineelementen haben 35 bei der Quaddrierung das Ergebnis 0.
//Edit
Startwert und Endwert berechnet und es sieht genauso aus, wie bisher.
Völlig unbrauchbar. Also hat sich meine Frage, ob Start- und Endwert reichen von selbst erledigt. -
Moin,
wenn ich euer Problem richtig verstehe habt ihr eine Polyline in verschiedenen, unsortierten Segmenten vorliegen, die ihr zu einer, durchgehenden Polyline zusammenfassen wollt?
Ich habe mir mal ein VB Script geschrieben, welches genau das macht. Es geht davon aus, dass alle Segmente das gleiche Label besitzen. Per Parameter kann man die maximale Lücke einstellen die geschlossen wird. Alles darüber hinaus wird als neues Objekt angesehen. Die Segmente werden sortiert, nötigenfalls gedreht und zusammengefügt.
Ich hatte damals Shape Dateien von automatisch vektorisierten Scans zum Verarbeiten, welche durch Höhenlinien, Längen und Breitenangaben zerschnitten waren.
Für ein größeres Datenvolumen ist es aber eher ungeeignet, da es ewig braucht..aber wenn man Zeit hat...:D
VG
Sockeye