GeoPoint 将空间数据转X Y值

0 投票
String jsom ="{\"type\": \"Point\", \"coordinates\": [12596650.650729451, 2578687.1412320784]}"
GeoPoint geoPoint = new GeoPoint();
geoPoint.fromGeoJSON(json);
double latitude = geoPoint.getX();
double longitude = geoPoint.getY();

为什么转换出来的latitude值为1.2596650650729451,而不是12596650.650729451?

8月 6 分类:  20次浏览 | 用户: 酸甜番茄酱 (2 分)
修改于 8月 6 用户:酸甜番茄酱

1个回答

0 投票

您好,GeoPoint.getX()方法返回的是一个double类型的值,您在写代码的时候返回double。返回值如果是以科学技术法存的可以参考下面这篇文章:https://blog.csdn.net/zjy15203167987/article/details/80885530

8月 6 用户: 董懿鑫 登峰造极 (5,773 分)

但是为什么GeoPoint.getY()就没事,,上面打错了
 

double latitude = geoPoint.getX();//"latitude =1.259659847413116E7"
double longitude = geoPoint.getY();//"longitude = 2579141.895743005"
这个是Java语音会默认将7位以上的数值以科学计数法的方法,你按照上面那篇文章进行转换。
好的,谢谢。我去试试
...