VectorTilesMap

new SuperMap3D.VectorTilesMap(options)

矢量瓦片地图类。 mapbox的style中的各种规范参考:“https://docs.mapbox.com/mapbox-gl-js/style-spec/”。
Name Type Description
options 参数对象包含以下属性:
Name Type Default Description
url String 适用于通过SuperMap桌面软件生成mvt数据,经iServer发布为rest风格的地图服务。
url String 服务地址,适用于第三方发布的WMTS服务。(mapbox只支持3857投影坐标系,全球剖分且瓦片原点位置固定在3857投影左上角的栅格瓦片数据)
layer String 图层名称,适用于第三方发布的WMTS服务。
layerConfig String 图层配置文件。
provider String 地图服务提供者。
name String 地图名称。
tileWidth String 瓦片宽度,适用于第三方发布的WMTS服务。
tileHeight String 瓦片高度,适用于第三方发布的WMTS服务。
format String 'mvt' optional 适用于第三方发布的WMTS服务。
tilematrxset String 切图矩阵集名称,适用于第三方发布的WMTS服务。
billboardMode billboardMode optional 设置文字的显示模式,持平铺显示。
localIdeographFontFamily Boolean optional 用于设置文字注记字体为浏览器默认字体,解决mapbox无法识别字体导致文字不显示的问题,默认false。
subdomains Array | String 多子域。传入参数为Array时,支持多个子域加载。传入参数为String时仅支持单个子域加载。
crs String 目前支持加载第三方坐标系EPSG:4490,EPSG:3857,默认值EPSG:4490。
transformRequest function 回调函数。用于修改url、设置报头或为跨源请求设置凭据属性。默认值为null。
Example:
var mvtMap = scene.addVectorTilesMap({
     url:URL_CONFIG.MVT,
     canvasWidth:512,
     name:'testMVT',
     viewer:viewer,
     transformRequest:function(url,resourceType){
         return {
             url:url.replace('http','https'),
             headers:{'my-custom-header':true}
         };
     }
});

Members

alpha

获取或者设置图层整体的透明度,取值在0到1之间(0为完全透明)。

detailLevelOffset : Number

设置MVT图层的精细层使用粗糙层的纹理。通过数字来指定偏移的层数,正整数时使用当前层之上的精细层的纹理,为负数时往下偏移,number表示偏移的层数。

enableMorphing : Boolean

设置是否开启渐变(上下层影响切换时做渐变融合)类型为bool,默认值为false。
Default Value: false

isOverlapDisplayed : Boolean

获取或者设置图层重叠的部分是否显示。设为true时,重叠的部分依然显示,即不参与避让。默认值为false。
Default Value: false

mapboxStyle

获取或者设置图层使用的mapbox标准的风格对象,可用来在前端修改地图风格、样式、专题图等。 mapbox的style中的各种规范参考:“https://docs.mapbox.com/mapbox-gl-js/style-spec/”。

maximumLevel : Number

获取图层的最大级别。

minimumLevel : Number

获取图层的最小级别。

overlapDisplayedThreshold : Boolean

设置文字/图标避让阈值,默认值为0。
Default Value: 0

rectangle : Number

获取数据的地理范围。
See:

selectedColor : Boolean

设置选中颜色高亮,默认值为SuperMap3D.Color.CYAN。
Default Value: false

show : Boolean

获取或者设置图层的可见性。

showCallout : Boolean

获取或者设置是否显示牵引线。

style3D : Object

获取或者设置显示风格。
See:

swipeEnabled : Boolean

设置是否开启卷帘功能,默认值:false。
Default Value: false

swipeRegion : Boolean

设置卷帘区域左上角和右下角,类型:BoundingRectangle,默认值为new ,SuperMap3D.BoundingRectangle(0.0,0.0,1.0,1.0)
Default Value: new

tileHeight : Number

获取切图高度。

tileWidth : Number

获取切图宽度。

tilingScheme

获取数据的全球剖分方式。

Methods

addLayer(layerObject, before, options)

添加图层。
Name Type Description
layerObject Object 符合mapbox的style中layer规范的图层参数对象。
before String 根据ID指定一个目标图层,将新增图层放置于该图层前面。
options Object 图层的其他属性。

getVisibleInViewport(index)Boolean

获得图层对应视口可见性,主要用于分屏和大屏显示中。
Name Type Description
index Number 索引。
Returns:
visible 可见性。
Throws:

queryRenderedFeatures(cartographicArray, options, layers, filter)

从指定的图层查询在指定地理范围内的渲染特征。
Name Type Description
cartographicArray Array.<Cartographic> | Cartographic 指定地理范围,地理坐标点或者地理坐标数组。
options Object 对象。
layers Array.<string> 指定的图层ID,如果未指定图层ID,则返回所有图层与指定范围相交的渲染特征。
filter Filter 过滤器。

querySourceFeatures(params)

查找特征要素。根据指定的特征,查询地图上的元素,现在已经支持模糊查询。
Name Type Description
params 指定的要素特征,根据该特征进行查找。
Example:
var result = mvtMap.querySourceFeatures({
sourceLayer: selectLayer.id, //子图层名称
filter: ["like","NAME","京"] //设置模糊查询过滤条件。如此处可以查出NAME属性带“京”的要素。
})

refresh()

刷新图层,让修改后的地图风格生效。

releaseSelection()

释放选中区域。

removeLayer(id)

移除指定ID的图层。
Name Type Description
id String 拟被移除的图层的ID。

setCRS(crs)

对接第三方MVT数据(加载第三方数据时必须设置数据的坐标系)。
Name Type Description
crs String 目前支持EPSG:4490,EPSG:3857,默认值EPSG:4490。
Example:
SuperMap3D.when(mvtMap.readyPromise, function(){
     mvtMap.setCRS("EPSG:3857")
})

setFilter(layerID, filter)

为指定ID的图层设置过滤器。
Name Type Description
layerID String 拟设置过滤器的图层ID。
filter Object 一个符合mapbox的style中filter规范的过滤器参数对象。

setLayoutProperty(layerId, name, value, options)

为指定ID的图层设置布局风格。通过该接口,可以设置文本换行显示。
Name Type Description
layerId String 拟设置布局风格的图层ID
name String 布局风格的名称。
value String 布局风格的值。
options Object 一个符合mapbox的style中filter规范的布局风格参数对象的其他选项。
Example:
设置文字换行的用法。
mvt.setLayoutProperty(子图层名称,'text-max-width',单行文本的最大字符数)
mvt.setLayoutProperty("加油站注记#1", 'text-max-width',5 )
设置文字图层不沿线旋转,默认值false。
mvt.setLayoutProperty("沿线文字图层id", 'ignore-line-rotation', true/false )
设置沿线文字图层位置沿着矢量数据定义的顺序放置。
mvt.setLayoutProperty("沿线文字图层id", 'symbol-placement', 'line-direction')

setPaintProperty(layerId, name, value, options)

为指定ID的图层设置画布样式。
Name Type Description
layerId String 拟设置画布样式的图层ID。
name String 画布的名称。
value String 画布的值。
options Object 一个符合mapbox的style中filter规范的画布参数对象的其他选项。

setVisibleInViewport(index, visible)

设置图层对应视口可见性,主要用于分屏和大屏显示中。
Name Type Description
index Number 索引。
visible Boolean 可见性。
Throws: