2017-07-26 196 views
0

在mapbox中看到3d建筑物后:https://www.mapbox.com/mapbox-gl-js/example/3d-buildings/我已决定创建一个只有我自己的3个建筑物(自定义建筑物,其中一个在建筑中)的自定义层,但我在用mapbox视图挤压这些建筑物时遇到了问题。我使用与示例中相同的代码,只有建筑轮廓出现在地面上,不能使它们看起来像3d建筑物。有什么建议吗?Mapbox - 在自定义层中挤压建筑物

更具体: 1.创建了JOSM建设, 2.出口到GeoJSON的文件 3.进口mapbox工作室 4.试图代码使用图层,但只建设countours出现在地图 - 不一个实际的3d形状。

下面是我的mapbox工作室的屏幕截图:http://i.imgur.com/LZbKUvr.jpg - 建筑图层是默认显示建筑物的图层,但building_custom没有。另外,为什么我的building_custom图层的名称附近有绿线,而不是蓝色,比如建筑图层呢?

我一直在试图解决这个问题2天,不知道我在做什么错误的地图盒。作为建筑物实际存在的证据,请点击此处,正确显示https://osmbuildings.org/?lat=40.71604&lon=-74.0362&zoom=17.8&rotation=-54&tilt=28(中间建筑物,反向C形正面)。

回答

1

如果您的屏幕截图是最新的,那么您当前正在将building_custom图层设置为填充图层。为了使它们成为3D,您需要将其更改为填充挤出层(旁边的“类型” - 填充挤出层类型看起来像风车)。一旦它是填充挤出层,您就可以在“样式”面板中调整其高度。

至于你的其他问题,我想你问的是为什么building_custom旁边有一个淡紫色的线?如果这是您的问题,那么颜色编码与图层数据的来源层有关。默认建筑图层来自Mapbox Streets中的“建筑”源图层;您的自定义构建图层来自不同的源图层。 (所有的地方*图层都来自同一个源图层 - Mapbox Streets中的“地点标签” - 这就是为什么它们都具有相同的颜色。)

+0

是的,它确实挤压了我的建筑,但它忽略了设置I已经添加了JOSM,比如min_height,height,building:min_level,building:levels等等。因为我的建筑物不是平常的形状,所以它看起来像这样__ [],其中下部像9层,高部分是69层。我想我可以创建2层并使其工作,但只是想知道是否有更好的方法来显示mapbox中的复杂建筑物? – fshock

+0

我明白了。 Mapbox中的“填充挤出”只是一个多边形棱镜,所以如果您想要显示具有两个不同高度的建筑物,则需要两个不同的特征(如果重叠,它们似乎会被连接当呈现时,这可能是你正在寻找的效果)。至于在JOSM中忽略的设置,您需要使用[属性函数](https://www.mapbox.com/help/studio-manual-styles/#enable-property-function)来设置'fill-挤压高度“和”填充挤压基地“,你想要的值。 –