Mam pewne dane, które są we współrzędnych geomagnetycznych; oznacza to, że są to szerokość i długość geograficzna, ale w odniesieniu do magnetycznego bieguna północnego w Kanadzie, a nie geograficznego bieguna północnego. Jak można się domyślić, chciałbym dopasować je do innych danych znajdujących się w innych układach współrzędnych.
(Dane pochodzą z obliczeń owalu zorzy; tzn. Pochodzą z geomagnetycznych i nie ma źródła geograficznego, z którego mógłbym się zapoznać, nawet w zasadzie).
Dane będą przechowywane w PostGIS.
Najłatwiejszym sposobem na to jest znalezienie kodu EPSG dla układu współrzędnych geomagnetycznych, oznaczenie danych tym kodem, a następnie wszystko zostanie magicznie przekierowane na wszystko, czego potrzebuję w danym momencie. Nie mogę jednak znaleźć żadnych kodów EPSG na spatialreference.org zawierających ani geomagnetyczne, ani magnetyczne . Różne wyszukiwania Google również nic nie pokazują.
Dla potrzebnego poziomu precyzji wystarczy dowolny układ współrzędnych szerokość / długość geograficzna (np. WGS84) zmodyfikowany tak, aby miał inny biegun północny. Więc jeśli istnieje prosty sposób zdefiniowania takiego układu współrzędnych i załadowania go do PostGIS, to też byłoby OK.
Wyjaśnienie
Załóżmy na przykład, że zamiast przekształcić współrzędne geomagnetyczne na geograficzne, po prostu chciałem przekonwertować z UTM 15N na WGS84. Mógłbym zapisać obiekt UTM w PostGIS niezmodyfikowany i oznaczyć go kodem EPSG 26915 . Następnie, kiedy później zadałem pytanie, mogłem powiedzieć PostGIS: „proszę zwrócić wyniki w kodzie EPSG 4326 ”, a PostGIS automatycznie przekonwertuje się na WGS84.
Podobnie, chciałbym oznaczyć dane geomagnetyczne jakimś układem współrzędnych i pozwolić PostGIS na wykonanie ponownej projekcji za kulisami, bez konieczności reproject()
ręcznego wywoływania funkcji.
Odpowiedzi:
Nie jestem pewien, czy jakikolwiek open source obsługuje tę geomagnetyczną na geograficzną.
Ale jeśli masz mało współrzędnych, proszę. spróbuj tego ..
http://wdc.kugi.kyoto-u.ac.jp/igrf/gggm/index.html
NASA opublikował algorytm, możesz wypróbować http://idlastro.gsfc.nasa.gov/ftp/pro/astro/mag2geo.pro
źródło
geo2mag.pro
IDL do Pythona . Ten kod odwrotny jest bardzo podobny domag2geo.pro
. Oto kod przeniesiony do Pythona .Połączenia dostarczone przez vadivelan wyjaśniają, że współrzędne geomagnetyczne są po prostu obrotem kuli, dzięki czemu (a) biegun północny przechodzi przez obecny magnetyczny biegun południowy i (b) główny południk przechodzi przez bieguny fizyczne i magnetyczne.
Na przykład IGRF-95 wykorzystuje pozycję magnetycznego bieguna północnego w 1995 r. Na szerokości 79,30 i długości geograficznej -71,41 stopnia.
Obroty sferyczne można obliczyć na wiele sposobów , zazwyczaj przez konwersję do geocentrycznych współrzędnych kartezjańskich 3D, zastosowanie transformacji liniowej (poprzez mnożenie macierzy 3 x 3 lub mnożenie czwartorzędu) i przekształcanie z powrotem na współrzędne sferyczne. Ale jeśli nie chcesz tego programować, istnieje sztuczka:GIS, który obsługuje ukośne projekcje, może się obracać za pomocą ponownej projekcji. Po prostu rzutuj współrzędne geomagnetyczne tak, jakby były współrzędnymi geograficznymi, powiedzmy za pomocą polarnego aspektu rzutu sterograficznego (z centralnym południkiem na 0 stopniach). Następnie odrzuć wynik, używając skośnego aspektu tej samej projekcji z szerokością geograficzną na 79,30 i środkowym południkiem na -71,41. Na koniec, projektuj jeszcze raz, używając dowolnej pożądanej projekcji, aby uzyskać „magiczną zmianę”.
źródło