挤出面图层

挤出面(fill-extrusion) 通常用来实现3D建筑,详见示例

fill-extrusion图层支持 vector 和 geojson 两种类型的数据源,所需的数据内容为面几何并附带高度属性;如下例所示:

 map.addSource('floorplan', {
    'type': 'geojson',
    'data': './data/indoor-3d-map.geojson'
});
map.addLayer({
    'id': 'room-extrusion',
    'type': 'fill-extrusion',
    'source': 'floorplan',
    'paint': {
        'fill-extrusion-color': ['get', 'color'],
        'fill-extrusion-height': ['get', 'height'],
        'fill-extrusion-base': ['get', 'base_height'],
        'fill-extrusion-opacity': 0.5
    }
})

1、id

id 表示该图层的唯一标识,值为字符串;

2、type

type 表示该图层的类别,extrusion 图层 type 属性的值为"fill-extrusion";

3、source

source 表示该图层所使用的数据源的唯一标识 ID,也可以是一个符号要求的数据源规格说明。

4、source-layer

source-layer 为 vector 类型数据源中所使用的图层数据的唯一标识;如果使用的数据源类型为 geojson,该参数不需要设置;

5、layout

extrusion 图层的 layout 中包含的属性只有 visibility,值为"visible"表示该图层显示,为"none"表示该图层不显示;默认值为"visible";

6、paint

extrusion 图层的 paint 中包含的属性有:

(1) “fill-extrusion-color”:表示建筑物面的填充颜色,值可以是 rgb 值,也可以是十六进制颜色值;支持函数对象语句;

(2) “fill-extrusion-opacity”:表示建筑物面颜色的不透明度,与’extrusion-color’搭配使用,值域为[0,1],默认值为 1;支持函数对象语句;

(3) “fill-extrusion-pattern”:表示建筑物面填充的纹理,值为图标标识名称,图标的长、宽值必须为 2 的倍数;

(4) “fill-extrusion-translate”:表示建筑物面的几何偏移,值为数组[x,y],x 若为正值,表示向右,负值表示向左,y 若为正值,表示向上,负值表示向下;

(5) “fill-extrusion-translate-anchor”:表示建筑物的偏移锚点,需要’extrusion-translate’值存在,否则无效,值为"map"或"viewport",默认值为"map";

(6) “fill-extrusion-base”:表示建筑物的基础高度,值必须大于等于 0,默认值为 0;

(7) “fill-extrusion-height”:表示建筑物的相对高度,最终的建筑物渲染高度由基础高度值和该参数值决定,值必须大于等于 0,默认值为 0;支持函数对象语句;

7、minzoom

图层可展示的最小缩放等级值,选填项。

8、maxzoom

图层可展示的最大缩放等级值,选填项。

9、filter

所使用数据源的 features 数据的过滤条件,选填项。

results matching ""

    No results matching ""