mapbox-developer-group / Mapbox-Tech-Q-A

在提问之前请自行查看文档哦,养成好习惯:https://docs.mapbox.com/
32 stars 1 forks source link

3维形式呈现建筑物时icon高度问题 #70

Open dalbert1989 opened 4 years ago

dalbert1989 commented 4 years ago

我遇到的问题是我用'fill-extrusion'建立了一个三维的建筑模型,但是想给每个房间添加icon,但是icon没有高度,怎么才能把icon放到三维建筑模型的二楼(截图中红色箭头的位置)?

微信截图_20200428094712

我的样式代码截图

三维模型图层的代码: map.addLayer({ id: LAYER.ROOM1, type: "fill-extrusion", source: LAYER.ROOM1, minzoom: RoomStyle.ROOM1.minZoom, paint: { "fill-extrusion-outline-width": 1, "fill-extrusion-outline-color": ["get", "fill-outline-color"], "fill-extrusion-color": [ "case", ["boolean", ["feature-state", "hover"], false], RoomStyle.HighLightRoomColor, ["get", "color"] ], "fill-extrusion-height": ["get", "height"], "fill-extrusion-opacity": RoomStyle.ROOM1.opacity==null?1:RoomStyle.ROOM1.opacity } });

icon图层的代码: map.addLayer({ id: LAYER.PUB_ICON, type: "symbol", source: LAYER.PUB_ICON, // sprite:mapStyle.spriteUrl, // glyphs:mapStyle.glyphs, minzoom: RoomStyle.PUB_ICON.minZoom, paint: { "text-color": ["get", "textColor"], "text-halo-color": "#FFFFFF", "text-halo-width": 1 }, layout: { "icon-image": "{icon}", "icon-size": 0.4, "text-field": "{title}", "text-font": ["fangzheng"], "text-offset": [0.8, 0.2], "text-size": 14, "text-anchor": "left", "icon-allow-overlap": false } });

该问题的类别 web 三维 点 icon 可视化