# new MapGISMapServerImageryProvider(options)
MapGIS地图图片图层
参数:
名称 | 类型 | 默认值 | 描述 |
---|---|---|---|
options |
Object | ||
url |
String | null | 服务地址,格式如下: |
layers |
String | null | 要显示的子图层id,多个子图层以逗号分隔,'layer1,layer2,...',如果要显示所有层,则请传一个空字符串 |
tilingScheme |
Cesium.TilingScheme | CustomTilingScheme | Cesium.GeographicTilingScheme | 瓦片的平铺方案,详见Cesium.TilingScheme |
rectangle |
Cesium.Rectangle | Cesium.Rectangle.MAX_VALUE | 图层显示范围,超出范围不会额外请求瓦片,详见Cesium.Rectangle |
httpMethod |
String | 'GET' | HTTP请求方式,"GET"、"POST",默认为GET请求 |
headers |
Object | null | HTTP请求头,传入方式见下方示例,请严格按照HTTP请求头属性填写,可传入请求方式为POST时的编码方式,默认方式为"text/plain",请注意IGS.NET版本服务目前只支持"text/plain"的编码方式 |
enablePickFeatures |
Boolean | false | 是否启用瓦片要素获取 |
tileWidth |
number | 256 | 请求瓦片宽度 |
tileHeight |
number | 256 | 请求瓦片高度 |
minimumLevel |
number | 0 | 图层最小请求瓦片级别,小于该级别不再请求瓦片 |
maximumLevel |
number | 图层最大请求瓦片级别,大于该级别不再请求瓦片 |
|
gdbps |
Array | [] | gdbps地址数组 |
filters |
String | null | 用户指定的图层过滤条件,它由多个键值对组成,值为过滤条件 |
extensions |
Array | [] | 自定义扩展参数,将参数里面的对象解析出来拼装在出图地址后面 |
proxy |
String | null | 转发代理 |
dynamicLayers |
Array | [] | 动态图层信息 |
build2DImageResource |
function | null | 重载build2DImageResource方法,来重载瓦片的请求逻辑 |
clientId |
String | Math.random().toString(36).substring(2) | 客户端id,用户的唯一标识;在地图服务中,调用接口时如果修改了地图的状态,包括设置动态投影、设置图层显示隐藏等,为了提升并发性能,服务端会根据clientId来生成临时地图,最佳做法是一个浏览器生成一个固定的唯一值;建议普通用户不要传该参数,webclient会根据当前浏览器生成一个固定的唯一值 |
isAntialiasing |
Boolean | undefined | 返回的图片时,是否开启服务端抗锯齿功能;启用抗锯齿功能后,显示效果会更清晰,但会导致出图速度变慢,true表示开启抗锯齿,false表示关闭抗锯齿,如果没有设置,则默认应用地图文档(MapX)上的设置参数 |
请参考以下示例:
1、添加一个MapGIS地图图片图层:原生接口开发2、添加一个MapGIS地图图片图层:混合接口
3、extensions参数的配置方法
4、headers参数的配置方法
5、子图层过滤
6、影像图层高程模式设置
7、卷帘
8、地表透明度独立控制
9、更多图层加载示例
支持如下方法:
[1、通过MapGIS地图服务的url获取MapGISMapServerImageryProvider对象][2、获取瓦片的要素]
[3、请求给定贴图的图像]
示例
// ES5引入方式
const { MapGISMapServerImageryProvider } = zondy
// ES6引入方式
import { MapGISMapServerImageryProvider } from "@mapgis/webclient-cesium-plugin"
// 定义IGS地图图片图层服务的基地址
const url = 'http://webclient.smaryun.com:8089/igs/rest/services/Map/湖北省4326/MapServer'
// 添加IGS地图图片图层
async function addIGSMapImageLayer(url) {
const provider = await MapGISMapServerImageryProvider.fromUrl(url)
viewer.imageryLayers.addImageryProvider(provider)
}
// 添加IGS地图图片图层
addIGSMapImageLayer(url)
// ES5引入方式
const { MapGISMapServerImageryProvider } = zondy
const { IGSMapImageLayer } = zondy.layer
const { initializeOptions } = zondy.cesium.util
// ES6引入方式
import { MapGISMapServerImageryProvider, initializeOptions } from "@mapgis/webclient-cesium-plugin"
import { IGSMapImageLayer } from "@mapgis/webclient-common"
// 定义IGS地图图片图层服务的基地址
const url = 'http://webclient.smaryun.com:8089/igs/rest/services/Map/湖北省4326/MapServer'
// 创建地图图片图层对象
igsMapImageLayer = new IGSMapImageLayer({
url: url
})
// 获取地图图片图层服务的元信息
igsMapImageLayer.load().then((layer) => {
// 获取provider的初始化参数
const options = initializeOptions(layer, viewer)
// 构造provider对象
provider = new MapGISMapServerImageryProvider(options)
// 添加图层到Cesium视图中
cesiumLayer = viewer.imageryLayers.addImageryProvider(provider)
})
// ES5引入方式
const { MapGISMapServerImageryProvider } = zondy
// ES6引入方式
import { MapGISMapServerImageryProvider } from "@mapgis/webclient-cesium-pulgin-mini"
// extensions参数为自定义扩展参数,需要确保服务端支持此类参数
const imageryProvider = new MapGISMapServerImageryProvider({
url,
tilingScheme,
extensions: [
{ key: 'token', value: 'example_token' },
{ key: 'filters', value: '1:ID>4,3:ID>1' },
{ key: 'proj', value: 'Web墨卡托_WGS1984' }
]
})
<caption id='example4'><h7>headers参数的配置方法</h7></caption>
const options = {
headers: {
'Content-Type': 'text/plain',
'Accept-Language': 'zh-cn,zh;q=0.5'
}
}
成员变量
方法
# async static fromUrl(url, options)
参数:
名称 | 类型 | 描述 |
---|---|---|
url |
String | 服务的基地址 |
options |
Object | 实例化对象时提供的额外配置参数,若该对象中包含构造参数则会覆盖对应的构造参数 |
初始化完毕的MapGISMapServerImageryProvider对象
# pickFeatures(x, y, level)
参数:
名称 | 类型 | 描述 |
---|---|---|
x |
Number | 瓦片的X坐标 |
y |
Number | 瓦片的Y坐标 |
level |
Number | 瓦片的详细级别 |
所选要素的Promise,将在异步选择完成后resolve 解析后的值是ImageryLayerFeatureInfo的实例数组。如果在给定位置没有找到要素,则数组可能为空。
# requestImage(x, y, level, request)
参数:
名称 | 类型 | 描述 |
---|---|---|
x |
Number | 瓦片的X坐标 |
y |
Number | 瓦片的Y坐标 |
level |
Number | 瓦片的详细级别 |
request |
Object | 请求对象 |
瓦片的Resource对象