经纬度坐标:117.20936847585499 39.13572096095466
经过下面代码
PrjCoordSys Prj = mapControl.getMap().getPrjCoordSys();
if (Prj.getType() != PrjCoordSysType.PCS_EARTH_LONGITUDE_LATITUDE) {
Point2Ds points = new Point2Ds();
points.add(point2D);
PrjCoordSys desPrjCoorSys = new PrjCoordSys();
desPrjCoorSys.setType(PrjCoordSysType.PCS_EARTH_LONGITUDE_LATITUDE);
CoordSysTranslator.convert(points, desPrjCoorSys, Prj,new CoordSysTransParameter(),
CoordSysTransMethod.MTH_GEOCENTRIC_TRANSLATION);
point2D.setX(points.getItem(0).getX());
point2D.setY(points.getItem(0).getY());
}
Log.i("receiver","point2d "+point2D.getX()+" "+point2D.getY());
mapControl.panTo(point2D, 200);
转换成point2D
point2d 1.3047687214933347E7 4741131.123521656
在地图上标注的位置不对,请问哪个参数有问题?
加载地图的方法是:
baiduInfo = new DatasourceConnectionInfo();
//设置数据源别名
baiduInfo.setAlias("BaiDu");
//baiduInfo
baiduInfo.setEngineType(EngineType.BaiDu);
//设置地图服务地址(对接百度地图服务时,不设置该项也可打开,若服务地址变更,可在此处设置变更后的百度地图服务地址)
String url = "https://map.baidu.com";
baiduInfo.setServer(url);
//打开数据源
Datasource datasource = workspace.getDatasources().open(baiduInfo);
//添加数据集到地图窗口
if (datasource != null) {
// mapControl.getMap().close();
baiduLayer = mapControl.getMap().getLayers().add(datasource.getDatasets().get(0), true);
mapControl.getMap().refresh();
}
准确位置是津塔,但是实际定位到津湾广场地铁站了,经纬度在百度地图网页是显示津塔。但是转换后超图显示的位置是津湾广场。