2013-03-09 6 views
5

Ich habe Probleme bei der Berechnung der Breiten- und Längengrade eines Bildes, das ich innerhalb eines div-Tags auf meiner Webseite hosste. Ich kann die x, y (Pixel) -Koordinaten des Bildes leicht herausfinden und sie in einer Variable in meinem Skript speichern. Hier ist der knifflige Teil ...Breiten- und Längengrad aus XY ermitteln

Die Karte ist nicht eine Mercator-Projektion, so kann ich nicht einfach linear die x, y-Pixel-Koordinaten zu lat und lon Werte interpolieren. Ich habe jedoch den Luxus, den Längen- und Breitengrad aller vier Ecken des Bildes zu kennen (siehe Diagramm), die Projektion der Karte auf das Bild, den Mittelmeridian und den Herkunftsquadrat.

http://i.imgur.com/xcGQCk1.png

Das 800x600 Pixel Bild der US-ist, und ich bin im Grunde versucht, die geographische Breite und Länge auf Klick zu erfassen, indem die x vorbei, y Pixelkoordinaten. Ich gehe davon aus, dass ich eine Art Transformationsfunktion brauche.

+0

können Sie mit der Genauigkeit spielen, um eine ungefähre Basis für die Extrapolation zu geben. Wie genau willst du sein? – bleuscyther

+0

Ich möchte so präzise wie möglich sein, aber ich bin offen für jede Idee. Was meinst du mit "ungefähre Basis für die Extrapolation"? – wuffwuff

+2

GIS (Geographisches Informationssystem) bei http://gis.stackexchange.com/ wäre eine geeignetere Seite für diese Frage. –

Antwort

0

Es könnte (aus Gründen Ihrer Gesundheit) einfacher sein, eine Karten-API wie Leaflet oder Google Maps auf der Seite zu verwenden und nur die Position zu fixieren und dann die LatLng des On-Click-Ereignisses zu verwenden.

Ein kurzer Blick auf die Leaflet.js API schlägt vor, dass das möglich ist und es sieht so aus, als könnten Sie es auch mit Google Maps machen. Es ist ein bisschen eine Fiedel, um sicherzustellen, dass Sie alle Möglichkeiten zum Ziehen und Zoomen deaktiviert haben. Aber es scheint mir viel einfacher zu sein, da die gesamte Projektionsarbeit für dich erledigt wird.

Es sei denn, es gibt wirklich einen brennenden Grund, warum Sie dieses Bild der USA brauchen. Aber selbst dann können Sie das Bild möglicherweise auf der Karte überlagern.

Verwandte Themen