# 拉伸图层(Extrusion)

拉伸图层用于将面类型的数据在垂直方向上将面向天空进行拉伸,三维的拉伸图层支持二维模式下的部分功能。

new aimap.Extrusion(layerOptions: Object)
1

# 初始化参数

# LayerOptions参数说明

字段名 类型 说明
id string 默认值为${type}.${uuid},该值不允许重复。
map Map 地图对象,如果设置,该图层会自动加载到地图中,如果未设置,需要手动加载图层:addTo(map)
mode string 三维图层的mode3d
minZoom number 能显示的最小的zoom level,默认 3。
maxZoom number 能显示的最大的zoom level(但不包括这个Level),默认20。
spatialReference string 图层数据的坐标系统,默认:gcj02。可选项分别为:
- GPS坐标系—wgs84
- 火星/高德坐标系—gcj02
- 百度坐标系—bd09
- 城建坐标系—cgcs2000
data必须 Data 支持面类型的矢量数据,包括SimpleFeatureGeoJSON等,具体参见:矢量数据定义
style必须 Style 本图层支持与线相关的样式配置,包括:extrusion-color, extrusion-opacity, extrusion-base, extrusion-height
filter Filter 图层数据的过滤条件,不满足过滤条件的数据将不显示。具体参见:Filter 配置

# 示例

const layer = new aimap.Extrusion({
    mode: '3d',
    data: [{
        coordinates: [[[121.1, 31.2], [121.1, 31.3], [121.2, 31.3], [121.2, 31.2], [121.1, 31.2]]]
    }, {
        coordinates: [[[121.1, 31.2], [121.1, 31.3], [121.0, 31.3], [121.0, 31.2], [121.1, 31.2]]]
    }],
    style: {
        
        'extrusion-color': 'white',
        'extrusion-opacity': 1,
        'extrusion-height': 100,
        'extrusion-base': 0,
    },
    map
});
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16

# 实例变量

# id

此图层的 id,如果在初始化图层的参数中指定,则为参数中的 id,否则 SDK 内部会自动生成一个 id。

# 示例

var extrusion = new aimap.Extrusion({...});
console.log(extrusion.id); // "extrusion.9db79b01-f3c0-4da6-a36a-b4d5827c4e37"
1
2

# type

此图层的类型,对于本图层, type 为固定值:extrusion

# 示例

var extrusion = new aimap.Extrusion({...});
console.log(extrusion.type); // "extrusion"
1
2

# 实例方法

addTo(map)

如果在初始化图层时,没有传入地图对象参数,则需要使用此方法来将图层添加到地图上。

参数

map(Map):需要添加本图层的地图对象。

返回值

Extrusion:this

remove()

将本图层从地图中移除,并销毁相关的资源。

返回值

Extrusion:this

show()

显示该图层。

返回值

Extrusion:this

hide()

隐藏该图层。

返回值

Extrusion:this

flyTo(options?)

使地图带有动画的跳转,使得图层的中心点位于屏幕中间。

参数

options(SetFocusOptions):跳转动画的更多参数,具体参见:SetFocusOptions 配置

返回值

Extrusion:this

fitView(options?)

使地图带有动画的跳转,使得图层的数据铺满屏幕。

参数

options(SetFocusOptions):跳转动画的更多参数,具体参见:SetFocusOptions 配置

返回值

Extrusion:this

setZoomRange(minZoom, maxZoom)

设置图层的缩放层级范围。

参数

minZoom(number):最小可显示该图层的缩放级别。

maxZoom(number):最大可显示该图层的缩放级别。

返回值

Extrusion:this

setStyle(style, options?)

增量更新图层的样式。

参数

style(style):样式对象,这些样式将增量更新到图层已有的样式上,支持的样式与当前图层一致。

options(SetStyleOptions):设置新样式的其他配置项,具体参见:SetStyleOptions 配置

返回值

Extrusion:this

setData(data, options?)

重新指定数据,原有的数据会被清除掉。

参数

data(Data):与 layeroptions参数说明 中的Data字段定义一致。

options(SetDataOptions):指定新数据源的其他配置项,具体参见:SetDataOptions 配置

返回值

Extrusion:this

setFilter(filter, options?)

为图层的数据设置过滤条件,不满足过滤条件的数据将会被隐藏。

参数

filter(Filter):图层数据的过滤条件,不满足过滤条件的数据将不显示。具体参见:Filter 配置

options(SetFilterOptions):进行过滤操作的其他配置项,具体参见:SetFilterOptions 配置

返回值

Extrusion:this

on(type, listener)

为图层绑定事件监听。

参数

type(string):事件类型,支持的事件类型可参考 图层事件

listener(Function):如果此处使用匿名函数,则后续将无法解绑。

返回值

Extrusion:this

once(type, listener)

为图层绑定事件监听,事件只会响应一次。

参数

type(string):事件类型,支持的事件类型可参考 图层事件

listener(Function):如果此处使用匿名函数,则后续将无法解绑。

返回值

Extrusion:this

off(type, listener)

解除已绑定事件监听。

参数

type(string):事件类型,支持的事件类型可参考 图层事件

listener(Function):通过 on 或者 once 绑定的事件对象。

返回值

Extrusion:this

# 图层事件

click

当鼠标在图层同一点处点击并松开时触发。

mousemove

当鼠标在图层中移动时触发。

mouseenter

当鼠标从某一图层外部或地图画布外部进入当前图层的可见部分时触发。

mouseleave

当鼠标离开当前图层的可见部分时触发。

最后更新于: 11/19/2021, 7:34:46 PM