MGRS / USNG- Обнаружение изменений зоны - PullRequest
0 голосов
/ 19 мая 2011

Я пишу библиотеку преобразования координат для javascript (как для NodeJS, так и для javascript браузера). Я уже сделал немного. Проверьте , если вам интересно. Я не написал большую часть кода, поэтому я не совсем уверен, как все работает.

Из того, что я могу сказать, зоны MGRS / USNG в основном переименованы в зоны UTM, которые, в свою очередь, определяются в терминах широта / долгота.

Допустим, у меня есть координата MGRS, и я перемещаю определенное смещение. Могу ли я точно определить, пересекла ли я границу зоны без предварительного преобразования в широту / долготу? Я знаю, как обновлять координаты при перемещении в пределах зоны, потому что почти все внутри квадратов.

Есть ли способ обнаружить изменения зоны без необходимости конвертировать в широту / долготу?

Существуют ли библиотеки на любом языке, которые это делают?

Существующий код требует широты и долготы, поэтому, я думаю, я мог бы преобразовать в широту / долготу, применить преобразование, а затем преобразовать обратно в MGRS. Это не было бы так плохо, если бы я только хотел определить зону, в которой я нахожусь, тогда я могу сохранить остальную часть преобразования в MGRS, чтобы сохранить точность. Единственная проблема в том, что я хочу быть максимально точным.

Примечание:

Я нашел эту статью , объясняющую преобразование координат, но на самом деле это не распространяется на преобразования координат.

Ответы [ 2 ]

2 голосов
/ 19 мая 2011

Java-библиотека openmap может вам помочь (вы можете адаптировать код к JavaScript).У них есть преобразования для MGRS в Lat / Lon и многое другое.Что касается обнаружения изменений зоны, вы можете попробовать опубликовать этот вопрос на сайте GIS Stack Exchange .Я уверен, что у кого-то там будет ответ.

MGRS имеет номера ссылок сетки, а не широты и долготы.Смотрите здесь .Так что, похоже, вам не нужно конвертировать в lat / lng, чтобы определить, что вы пересекли сетку.

1 голос
/ 24 мая 2011

Из того, что я обнаружил, невозможно напрямую конвертировать между MGRS и Lat / Long.

MGRS (или USNG в этом отношении) использует те же определения зон, что и UTM, который определяетсяширота / длинные координаты.UTM и MGRS (USNG) делают мир практически плоским, используя коэффициенты выдумки для поддержания высокой точности (в пределах метра или около того).Поскольку эти сетки обрабатываются как плоские, они не надежны для определения границ зон, которые определяются в терминах большого круга.

Преобразование между MGRS и UTM является простым (и в значительной степени без потерь), а преобразование - без потерь.между UTM и lat / long довольно точный, хотя и не точный на 100%.

Из того, что я прочитал, лучший способ точно перевести координату MGRS - это сначала преобразовать ее в lat / long, применитьперевести, затем перевести обратно.Это хорошо для обнаружения изменений зоны, но потенциально можно найти более точную точку назначения, используя зону из преобразования широта / долгота и применяя остальную часть перевода в координатах MGRS.Это должно обнаружить изменения в середине квадрата зоны.

Ссылки / Ресурсы:

http://en.wikipedia.org/wiki/Military_grid_reference_system

http://www.stellman -greene.com / mgrs_to_utm /

...