对于我的应用程序,我需要用于在LatLon(WGS84)和MGRS之间进行转换的紧凑代码。
JCoord.jar: 看起来很棒,但1.1版jar的大小是0.5Mb。这是我的应用程序的两倍,仅用于执行双向坐标转换。
Openmap: 仅从其余部分中隔离MGRSPoint.java(https://code.google.com/p/openmap/source/browse/src/openmap/com/bbn/openmap/proj/coords/MGRSPoint.java)并不容易。
GeographicLib: 这似乎是一个很好的解决方案,但我找不到Java源文件。 可以使用吗?
美国宇航局: Nasa代码看起来很棒,请参阅http://worldwind31.arc.nasa.gov/svn/trunk/WorldWind/src/gov/nasa/worldwind/geom/coords/MGRSCoordConverter.java。仅隔离MGRS转换代码并不容易。
GDAL: 用另一种编程语言实现。
IBM(通过j-coordconvert.zip): 抱怨,适合UTM转换,但MGRS转换被描述为错误。唉。
是否存在用于在LatLon / wgs84和MGRS之间进行转换的良好(紧凑)Java源代码?
答案 0 :(得分:2)
https://github.com/Berico-Technologies/Geo-Coordinate-Conversion-Java
此源代码隔离了NASA Java源代码并添加了1个不错的实用程序类。
示例:
double lat = 52.202050;
double lon = 6.102050;
System.out.println( "To MGRS is " + Coordinates.mgrsFromLatLon( lat, lon));
反过来说:
String mgrs = "31UCU 59248 14149";
double[] latlon = Coordinates.latLonFromMgrs( mgrs);