SuperMap iMobile for Android 地图开发在线地图服务接入(二)

一、对接百度地图服务

DatasourceConnectionInfo info = new DatasourceConnectionInfo();
//设置数据源别名
info.setAlias("BaiDu1");
//设置引擎类型
info.setEngineType(EngineType.BaiDu);
//设置地图服务地址(对接百度地图服务时,不设置该项也可打开,若服务地址变更,可在此处设置变更后的百度地图服务地址)
String url = "https://map.baidu.com";
info.setServer(url);
//打开数据源
Datasource datasource = m_workspace.getDatasources().open(info);
//添加数据集到地图窗口
m_mapControl = m_mapView.getMapControl();
m_mapControl.getMap().getLayers().add(datasource.getDatasets().get(0), true);

二、对接必应地图服务

1、对接中文必应地图服务

DatasourceConnectionInfo info = new DatasourceConnectionInfo();
//设置数据源别名
info.setAlias("BingMaps1");
//设置引擎类型
info.setEngineType(EngineType.BingMaps);
//设置地图服务地址(对接必应地图服务时,不设置该项也可打开,若服务地址变更,可在此处设置变更后的必应服务地址)
String url = "https://www.microsoft.com/maps";
info.setServer(url);
//打开数据源
Datasource datasource = m_workspace.getDatasources().open(info);
//添加数据集到地图窗口
m_mapControl = m_mapView.getMapControl();
m_mapControl.getMap().getLayers().add(datasource.getDatasets().get(0), true);
//设置当前地图的显示比例尺
m_mapControl.getMap().setScale(1.703471946182E-8);

2、对接英文必应地图服务

DatasourceConnectionInfo info = new DatasourceConnectionInfo();

//设置数据源别名

info.setAlias("BingMap");

//设置Key值

info.setPassword("bing地图服务key值");

//设置引擎类型

info.setEngineType(EngineType.BingMaps);

//设置地图服务地址

String path = "https://www.microsoft.com/maps";

info.setServer(path);

//打开数据源

Datasource datasource = m_workspace.getDatasources().open(info);

//添加数据集到地图窗口

m_mapControl = m_mapView.getMapControl();

m_mapControl.getMap().getLayers().add(datasource.getDatasets().get(2/*1*/),true);

//设置当前地图的显示比例尺

m_mapControl.getMap().setScale(1.703471946182E-8);

三、对接谷歌地图服务

DatasourceConnectionInfo info = new DatasourceConnectionInfo();

//设置数据源别名

info.setAlias("GoogleMapRoad");

//设置引擎类型

info.setEngineType(EngineType.GoogleMaps);

//设置地图服务地址(对接谷歌地图服务时,不设置该项也可打开,若服务地址变更,可在此处设置变更后的谷歌地图服务地址)

String url ="http://www.google.cn/maps";

info.setServer(url);

//打开数据源

Datasource datasource = m_workspace.getDatasources().open(info);

//添加数据集到地图窗口

m_mapControl = m_mapView.getMapControl();

m_mapControl.getMap().getLayers().add(datasource.getDatasets().get("roadmap"),true);

四、对接OpenStreetMap

DatasourceConnectionInfo info = newDatasourceConnectionInfo();

//设置数据源别名

info.setAlias("OpenStreetMap2");

//设置引擎类型

info.setEngineType(EngineType.OpenStreetMaps);

//设置地图服务地址(对接OpenStreetMap地图服务时,不设置该项也可打开

//若服务地址变更,可在此处设置变更后的OpenStreetMap服务地址)

String url = "https://openstreetmap.org";

info.setServer(url);

//打开数据源

Datasource datasource = m_workspace.getDatasources().open(info);

//添加数据集到地图窗口

m_mapControl = m_mapView.getMapControl();

m_mapControl.getMap().getLayers().add(datasource.getDatasets().get(0), true);

五、对接天地图服务

DatasourceConnectionInfo info = newDatasourceConnectionInfo();

//设置数据源别名

info.setAlias("TianDiTu1");

//设置引擎类型

info.setEngineType(EngineType.OGC);

//设置驱动名称

info.setDriver("WMTS");

//设置地图服务地址

String url = "http://t0.tianditu.com/vec_c/wmts?amp;tk="您的密钥";

info.setServer(url);

//打开数据源

Datasource datasource = m_workspace.getDatasources().open(info);

//添加数据集到地图窗口

m_mapControl = m_mapView.getMapControl();

m_mapControl.getMap().getLayers().add(datasource.getDatasets().get(0), true);

六、对接超图云地图服务

DatasourceConnectionInfo info = newDatasourceConnectionInfo();

//设置数据源别名

info.setAlias("SuperMapCloud1");

//设置引擎类型

info.setEngineType(EngineType.SuperMapCloud);

//设置地图服务地址(必设)

String url = " http://t2.supermapcloud.com";

info.setServer(url);

//打开数据源

Datasource datasource = m_workspace.getDatasources().open(info);

//添加数据集到地图窗口

m_mapControl = m_mapView.getMapControl();

m_mapControl.getMap().getLayers().add(datasource.getDatasets().get(0), true);

七、对接Rest地图服务

DatasourceConnectionInfo info = new DatasourceConnectionInfo();

//设置数据源别名

info.setAlias("Rest1");

//设置引擎类型

info.setEngineType(EngineType.Rest);

//地图服务地址(此处为本地搭建的范例服务为例:)

//注意:

//1. 手机所连接网络要与服务地址在一个网段

//2. 本地搭建的范例服务,服务地址不可用localhost,要写ip地址

String url = "http:// 192.168.12.12:8090/iserver/services/map-world/rest/maps/World";

//设置地图服务地址(必设)

info.setServer(url);

//打开数据源

Datasource datasource = m_workspace.getDatasources().open(info);

//添加数据集到地图窗口

m_mapControl = m_mapView.getMapControl();

m_mapControl.getMap().getLayers().add(datasource.getDatasets().get(0), true);

八、对接OGC服务

1、对接WMS地图服务

//默认方式打开WMS服务数据:

DatasourceConnectionInfo info = new DatasourceConnectionInfo();

//设置地图服务地址(必设, 此处为本地搭建的范例服务为例:)

info.setServer("http://192.168.12.12:8090/iserver/services/map-world/wms130/World ");

//设置引擎类型

info.setEngineType(EngineType.OGC);

//设置驱动名称

info.setDriver("WMS");

//设置数据源别名

info.setAlias("openWMS");

//打开数据源

Datasource datasource = m_workspace.getDatasources().open(info);

//添加数据集到地图窗口

m_mapControl = m_mapView.getMapControl();

m_mapControl.getMap().getLayers().add(datasource.getDatasets().get(0), true);
//外设参数方式打开WMS服务数据

DatasourceConnectionInfo info = new DatasourceConnectionInfo();

//设置地图服务地址()

info.setServer("http://192.168.12.12:8090/iserver/services/map-world/wms130/World");

//设置引擎类型

info.setEngineType(EngineType.OGC);

//设置驱动名称

info.setDriver("WMS");

//设置WMS服务的版本号

info.setWebVersion("1.3.0");

//设置WMS服务的图片格式

info.setWebFormat("image/png");

//设置WMS服务的可见图层集合

info.setWebVisibleLayers("0.10,0.9,0.8,0.7,0.6,0.5,0.4,0.3,0.2,0.1,0.0");

// 设置Web服务数据源的坐标参考系

info.setWebCoordinate("EPSG:3857");

Rectangle2D rect = new Rectangle2D(-1.003750834278E7, -1.003750834279E7, 1.003750834278E7, 1.003750834279E7);

//设置WMS服务的地图范围

info.setWebBBox(rect);

//设置WMS服务的扩展参数

info.setWebExtendParam("");

//打开数据源

Datasource datasource = m_workspace.getDatasources().open(info);

//添加数据集到地图窗口

m_mapControl = m_mapView.getMapControl();

m_mapControl.getMap().getLayers().add(datasource.getDatasets().get(0), true);

2、对接WMTS地图服务

DatasourceConnectionInfo info = new DatasourceConnectionInfo();

//设置数据源别名

info.setAlias("WMTS1");

//设置引擎类型

info.setEngineType(EngineType.OGC);

//设置驱动名称

info.setDriver("WMTS");

//地图服务地址(必设, 此处为本地搭建的范例服务为例:)

String url = "http://192.168.12.12:8090/iserver/services/map-world/wmts-china";

info.setServer(url);

//打开数据源

Datasource datasource = m_workspace.getDatasources().open(info);

//添加数据集到地图窗口

m_mapControl = m_mapView.getMapControl();

m_mapControl.getMap().getLayers().add(datasource.getDatasets().get(0), true);

3、对接WFS地图服务

DatasourceConnectionInfo info = new DatasourceConnectionInfo();

//设置数据源别名

info.setAlias("WFS1");

//设置引擎类型

info.setEngineType(EngineType.OGC);

//设置驱动名称

info.setDriver("WFS");

//地图服务地址(必设, 此处为本地搭建的范例服务为例:)

String url = " http://192.168.12.12:8090/iserver/services/data-world/wfs100/gb18030";

info.setServer(url);

//打开数据源

Datasource datasource = m_workspace.getDatasources().open(info);

//添加数据集到地图窗口

m_mapControl = m_mapView.getMapControl();

m_mapControl.getMap().getLayers().add(datasource.getDatasets().get(0), true);

4、对接WCS地图服务

DatasourceConnectionInfo info = new DatasourceConnectionInfo();

//设置地图服务地址(必设, 此处为本地搭建的范例服务为例:)

String url = "http://support.supermap.com.cn:8090/iserver/services/data-world/wcs111";

info.setServer(url);

//设置驱动名称

info.setDriver("WCS");

//设置引擎类型

info.setEngineType(EngineType.OGC);

//设置数据源别名

info.setAlias("openWCS");

//打开数据源

Datasource datasource = m_workspace.getDatasources().open(info);

//添加数据集到地图窗口

m_mapControl = m_mapView.getMapControl();

m_mapControl.getMap().getLayers().add(m_datasource.getDatasets().get(0), true);

猜你喜欢

转载自blog.csdn.net/Chen_xiaobao/article/details/129610836