Laden...

GMap - Custom Map Projection

Erstellt von felix vor 9 Jahren Letzter Beitrag vor 9 Jahren 1.741 Views
F
felix Themenstarter:in
174 Beiträge seit 2007
vor 9 Jahren
GMap - Custom Map Projection

Hallo,

hat jemand von euch schon mal mit GMap gearbeitet? - http://greatmaps.codeplex.com/

Ich möchte für ein PC Spiel ein kleines Hilfs-Tool entwickeln, das die Karte des Spiels anzeigt. Auf der Karte sollen später Markierungen platziert werden könne. So weit bin ich aber noch nicht. Mein Problem ist derzeit die Darstellung der Koordinaten.

Leider habe ich früher in der Schule in Mathematik nicht aufgepasst 😉 Vielleicht lag es an der durchaus attraktiven Mathe-Lehrerin. Wer weiß.

Folgendes Problem:
Ich habe eine Karte mit folgenden minimum/maximum Werten:

Min X, Min Y: -4096
Max X, Max Y: 4096

Vermutlich könnt ihr mir nur weiterhelfen, wenn ihr selber schon mit oben genannter Komponente gearbeitet habt.

Habt ihr eine Idee, wie die Map Projection aussehen müsste, damit eben nicht die Standard Mercator Lat/Lng Koordinaten angezeigt werden, sondern eben die Reichweite von -4096 bis 4096? Das soll natürlich in jedem Zoom-Level funktionieren. Aktuell wird Zoom 1 bis 4 unterstützt.

Beim Bewegen der Maus über die Karte, sollen die Koordinaten angezeigt werden. Aber das ist nur nebensächlich ...

Hier ist der Source-Code der Standard MercatorProjection: MercatorProjection.cs

Vielleicht hat ja jemand eine Idee ...
Danke im Voraus

Gruß,
Felix

2.207 Beiträge seit 2011
vor 9 Jahren

Hallo felix,

wenn du die Komponente etc. schon hast...dann spiel doch einfach mal damit rum. 😃 Und dann kannst du auch konkrete Fragen stellen.

[Hinweis] Wie poste ich richtig? Punkt 4 und Punkt 5.

Irgendwas wirst du schon hinbekommen, da bin ich sicher 😉

Gruss

Coffeebean

16.830 Beiträge seit 2008
vor 9 Jahren

Unter OSM: Projections/Spatial Reference Systems steht alles, was man zu diesem Thema wissen muss.

F
felix Themenstarter:in
174 Beiträge seit 2007
vor 9 Jahren

Ok, danke erstmal. Ich werde mir den Artikel mal durchlesen.

F
felix Themenstarter:in
174 Beiträge seit 2007
vor 9 Jahren

Hallo,

hier ein kleines Update und ein paar mehr Details ...

ich habe mir den Artikel durchgelesen und größtenteils auch verstanden. Bei meinem Versuch eine Karte im Zoom-Level 1 mit 4 Tiles anzuzeigen, ist mir aufgefallen, dass am unteren und am rechten Rand der Karte ein Paar Pixel nicht erfasst werden. Diese fehlenden Pixel werden dann bei der Berechnung von Lat/Lng nicht berücksichtigt.

Der Bereich, den ich berechnen kann ist maximal folgender:
Min X: -4096
Max X: 4080
Min Y: -4080
Max Y: 4096

Das gilt jedoch nur für Zoom Level 1. Die Differenz ist hier also 16. In jedem weiteren Zoom-Level halbiert sich die Differenz jeweils zum vorherigen Zoom-Level. Also 16 -> 8 -> 4 -> 2.

Auch ohne meine Map Projection funktioniert das nicht richtig. Lng 180 und Lat -85.05112878 kann also mit dem GMap Control quasi nie erfasst werden. Die Ränder der Karte stimmen also nicht. Zumindest kam ich nicht auf diese Werte.

Hier wird das noch einmal bestätigt: Map edges
Der Post ist von 2010. Scheinbar ist es ein größeres Problem, sonst wäre es wohl schon behoben.

Wahrscheinlich kann mir dabei niemand weiterhelfen, aber vielleicht hilft es in Zukunft jemand anderem, der evtl. auf die gleichen Probleme stößt.

Trotzdem vielen Dank für eure Hilfe.

Gruß,
Felix