Breite und Länge in Nord- und Ostrichtung umwandeln?


10

Ich habe die folgende britische Postleitzahl dy8 3xt und weiß, dass der Breiten- und Längengrad ist: -

54.452772
-2.156082

Ich weiß auch, dass die Postleitzahl Easting, Northing lautet: -

389490
283880

Ich habe jedoch Schwierigkeiten, die Gleichung zu finden, die Lat / Long in Northing und Easting konvertiert. Ich würde es vorziehen, die Gleichung sowohl in jScript als auch in c # zu haben (ich bin gierig)!

Kann jemand helfen?

Weitere Informationen, wenn Sie auf diesen Link klicken , können Sie die Ergebnisse sehen, die ich suche. Die Postleitzahl, die ich mit WG S84 in lat / lng eingegeben habe, und die Gitterreferenzprojekte in OSGB. Meine Frage ist also, wie geht das?


Ich wurde schließlich hierher geführt, was ich bestätigen kann, dass es großartig funktioniert.


3
Wissen Sie, welche Koordinatensysteme Sie verwenden? "Ost und Nord" sind die Standardnamen für die x- und y-Koordinaten in jedem projizierten (dh planaren) Koordinatensystem. Zusätzlich sind "Breite und Länge" die Standardnamen für die Koordinaten in jedem nicht projizierten (dh geografischen) Koordinatensystem. Möglicherweise möchten Sie eine Umstellung von WGS84 auf UTM beantragen, oder Sie möchten das britische nationale Netzsystem, wie von mtrw vorgeschlagen. In jedem Fall sind die Zahlen für sich genommen mehrdeutig, es sei denn, Sie kennen auch das Koordinatensystem.
Daniel Pryden

@all haben eine Bearbeitung mit einem Link gepostet, der die gewünschten Ergebnisse und die verwendete Projektion zeigt

Antworten:


12

Bearbeiten - Update mit OSGB36-spezifischen Informationen.

Die gute Nachricht ist, dass die Zielprojektion OSGB36 ist, eine bekannte und standardisierte Projektion. Die schlechte Nachricht ist, dass die GIS-Programmierung immer noch sehr schwierig ist :)

Es gibt eine Reihe von Parametern, die definiert und mathematische Operationen auf diese Parameter angewendet werden müssen, um Lat / Long erfolgreich auf Gitter zu projizieren. Glücklicherweise gibt es Datenbanken mit Parametern für die ersteren und Bibliotheken für die letzteren. proj.4, die ich bereits erwähnt habe, ist eine der Standardbibliotheken. Es gibt auch Ports für proj.4andere Sprachen, einschließlich JavaScript, das hoffentlich für Ihre Zwecke nahe genug an jScript liegt. Der Port ist proj4js .

Das andere, was Sie wissen müssen, ist die EPSGNummer für Ihre Koordinatensysteme. OSGB36 ist EPSG: 6277. Die EPSG ist eine von der Ölindustrie (glaube ich) geschaffene Einrichtung, die viele lokal definierte Projektionen gesammelt und dokumentiert hat. Die Datenbank wird jetzt offen verwaltet, und GIS-Bibliotheken können ihre Definitionen verwenden.

Vorherige Infos

Ihre Ost- / Nordnummern befinden sich möglicherweise im britischen nationalen Netzsystem .

Ich gab eine Antwort auf eine andere GIS-bezogene Frage, die Links zu enthält proj.4, einer der Standardbibliotheken für die Konvertierung zwischen Lat / Long und Easting / Northing (die Vorwärtsberechnung wird projectionin der GIS-Welt aufgerufen ). Ich habe es nie für die von Ihnen gesuchte Konvertierung verwendet, aber die Software ist gut dokumentiert und enthält Konvertierungsdefinitionen für viele Projektionen.


@mtrw haben eine Bearbeitung mit einem Link gepostet, der die gewünschten Ergebnisse und die verwendete Projektion zeigt

Vielen Dank für Ihre Eingabe, ich habe viel daraus gelernt ... Siehe meine Antwort

@Rippo - Freut mich geholfen zu haben! GIS ist wirklich interessant. Ich habe kürzlich den Job verlassen, in dem ich mich in diesem Bereich versucht habe, und ich vermisse ihn ein bisschen.



6

Ist dies für die UTM-Zone Nord / Ost? Ich habe ein Dienstprogramm dafür in Javascript geschrieben:

http://cambertx.com/utm/


1
Gute Arbeit! Warum kein AdSense auf dieser Seite? ;)
John

Hervorragend, wird sich das ansehen.

@dan Ich habe dies versucht, kann aber nicht die erwarteten Ergebnisse erzielen. Offensichtlich gibt es etwas, das ich nicht verstehe.

Dies ist der ursprüngliche Code, mit dem ich auf die Idee gekommen bin : home.hiwaay.net/~taylorc/toolbox/geography/geoutm.html Ich musste den Code für mein Unternehmen ändern, aber es ist im Allgemeinen dieselbe Idee. @ John: Wahrscheinlich, weil mein Firmensitz passen würde, wenn sie Anzeigen auf ihrer Website sehen würden.

Rippo, ich denke, Sie müssen feststellen, von welcher Art von Projektion diese Zahlen stammen. Die "Ost- und Nord" -Nummern sind das Ergebnis der Umrechnung der geografischen Koordinaten in einen bestimmten Projektionsstandard. Sie haben alle unterschiedliche Algorithmen, also habe ich UTM einfach rausgeschmissen, weil ich angenommen habe, dass Sie das verwenden. Finden Sie die Projektionsmethode heraus, und dann können wir die richtige Formel für Sie finden. UTM hat normalerweise eine bestimmte Zonennummer, die dem Teil des Globus zugeordnet ist, mit dem Sie arbeiten. Wenn Sie diese Zonennummer also nicht haben, ist sie wahrscheinlich nicht utm.

4

Hier ist eine Referenz .


Crikey, diese Tabelle sieht beängstigend aus, ich hatte auf x = y * 2 gehofft!

@rippo Ein einfacher Approximationsalgorithmus könnte wahrscheinlich erhalten werden, indem die Durchschnittswerte für jeden dieser verschiedenen äquatorialen / polaren Radien und Abflachungswerte genommen werden, aber eine Approximation wäre alles, was es ist. Die Erde ist weder eine perfekte Kugel noch radialsymmetrisch bei der Genauigkeit, die sich aus der Anzahl der signifikanten Ziffern ergibt, die Sie in Ihrem Beispiel verwenden.

Das Anzeigen der Quelle für Dans Seite sollte das sein, wonach Sie für den JS-Teil suchen.
John

Ich habe versucht, einen Vorschlag zu machen, kann aber nicht die erwarteten Ergebnisse erzielen. Natürlich verstehe ich nicht, wonach ich frage, aber ich weiß, dass die von mir angegebenen Zahlen korrekt sind.

@all haben eine Bearbeitung mit einem Link gepostet, der die gewünschten Ergebnisse und die verwendete Projektion zeigt
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.