0

我有两层基于FeatureCollectionGeoJSON 数据。其中一个是 type circle,另一个是symbol。他们来了:

在此处输入图像描述

问题是,正如您在我们的项目中看到的那样,我们在地图上使用 3D 建筑物,并且我们需要我们的对象位于地面上方的特定高度。问题是,如何在 Mapbox 中做到这一点?

这是我尝试过的:

GeoJSON 特征坐标

可选的第三位置元素应为 WGS 84 参考椭球上方或下方的高度(以米为单位)。在没有高程值的情况下,对高度或深度敏感的应用程序应该将位置解释为处于当地地面或海平面。— <a href="https://datatracker.ietf.org/doc/html/rfc7946#section-4" rel="nofollow noreferrer">GeoJSON 规范。

我尝试为要素几何设置第三个参数,这是一个点,但没有帮助。看起来第三个值只是被忽略了。

      return {
        type: 'Feature',
        id: l.id,
        geometry: {
          type: 'Point',
          coordinates: [l.coordinates.lng, l.coordinates.lat, 50]
        }
      }

circle-translate

几何体的偏移。值为 [x, y],其中负数分别表示左和上。

我试过设置它,但结果看起来非常奇怪,它看起来不像正常的海拔。

例子

我已经修改了 Mapbox 中的一个示例,因此您可以使用它 - <a href="https://jsfiddle.net/zncvetxd/3/" rel="nofollow noreferrer">这里。

4

1 回答 1

0

不支持在符号图层上设置高程。请参阅https://github.com/mapbox/mapbox-gl-js/issues/3993https://github.com/mapbox/mapbox-gl-js/issues/10483

于 2021-11-30T06:21:53.213 回答