Полагаю, вы имеете в виду восточное и северное направления ОСГ Великобритании. Тригонометрия, стоящая за этой, очень смешная, но вы можете использовать для этого библиотеку JCoord , это упрощает ее (если сильно загружает процессор).
Чтобы прокомментировать комментарии @ DD, приведенные ниже, есть недоработка с JCoord, в которой вы должны убедиться, что используете правильные данные при преобразовании из Easting / Northing в Lat / Long и наоборот.
Возьмите код @ DD:
LatLng latLng = new OSRef(394251,806376).toLatLng();
Это вернет широту / долготу, которая использует данные OSGB36, то есть приближение «плоской земли», используемое на картах Великобритании. Это существенно отличается от данных WSG84, используемых в большинстве приложений (включая Streetmap), которые моделируют мир как сферу (более или менее).
Чтобы преобразовать в WGS84 lat / long, вам нужно сделать это явно:
LatLng latLng = new OSRef(394251,806376).toLatLng();
latLng.toWGS84();
Это позволит отрегулировать широту и длину до правильного значения.
Обратите внимание, что javadoc для OsRef.toLatLng()
очень ясно говорит об этом:
Преобразовать эту опорную сетку OSGB в пару широта / долгота, используя данные OSGB36. Обратите внимание, что объект LatLng может нуждаться в преобразовании в базовые данные WGS84 в зависимости от приложения
Преобразование между координатными данными не простое. Если это выглядит просто, вы, вероятно, делаете это неправильно.