高程选项
这个例子展示了如何为 3D 可视化改变一个 FeatureLayer 的仰角信息。通过修改 FeatureLayer 的 elevationInfo 属性,可以使用各种选项来定制 3D 场景中要素的仰角。
四个属性允许您自定义每个要素的高度: mode
、offset
、featureExpressionInfo
和 unit
。
高程模式设置高程放置的类型。 这些是 mode
可以采用的值:
on-the-ground
: 气球图形覆盖在地形表面上。 在这种模式下,offset
,featureExpressionInfo
和unit
无效,并且丢弃 z 值。relative-to-ground
: 气球图形放置在相对于地形表面的高程处。 如果图形有 z 值,将保留它们。 如果已定义,则使用featureExpressionInfo
代替 z 值。 在下面的屏幕截图中,图形具有 z 值,但我们将featureExpressionInfo
中的expression
设置为0
。relative-to-scene
: 气球图形放置在相对于建筑物的高度。 如果存在,则将几何的 z 值添加到高程中。 如果定义了featureExpressionInfo
,则使用表达式的结果而不是几何的 z 值。absolute-height
: 气球图形放置在相对于基准的绝对高度。 绝对高度由每个要素的 z 值确定。 这种模式的工作方式类似于relative-to-ground
,不同之处在于将丢弃地形高程。
图形偏移添加到所有图形的高程中。 100 的 offset
将符号在其现有高程上方移动 100 个单位(默认为米)。 将 unit
更改为公里会使图形离地 100 公里,如下图所示:
(此处不考虑 z 值,因为定义了 featureExpressionInfo
)
自定义高程 可以使用 featureExpressionInfo
计算,这是一个 Arcade 表达式 ,可以计算自定义高程值。一旦设置了这个属性,不再考虑 zvalues 。
例如,您可以执行以下操作以根据要素的 z 值和属性计算自定义高程:
这就是使用这段代码提升图形的方式:
当在 expression
中使用属性时,outFields 应该在图层上定义。
高程单位 定义了 featureExpressionInfo
和 offset
的单位。 默认情况下是米。
将此示例与 点的 3D 符号 进行比较,以了解在 3D 中可视化 2D 要素的不同选择。