天际线障碍物 (3D Analyst)

摘要

生成表示天际线障碍物或阴影体积的多面体要素类。

了解有关“天际线障碍物”工作原理的详细信息

插图

天际线障碍物工具图示
第一张图像为“天际线障碍物”工具的输入。 其中包括观察点和天际线工具的天际线输出。 第二张图片为天际线障碍物的输出。

使用情况

  • 障碍物与三角形扇相似,通过从观察点到天际线的第一个顶点绘制一条线,然后将该线扫过天际线的所有顶点而形成。 可以使用此工具确定要素(例如表示建筑物的多面体)是否与通过它而突出的障碍物发生冲突,或者建议的建筑物是否会改变天际线。

  • 首先使用天际线工具生成天际线或轮廓。 轮廓将生成来自观察点的光投射的阴影的体积表示。

  • 最小半径最大半径参数定义了从观察点发出的三角形边的长度。 如果为最小半径最大半径指定默认值 0,则分析中将不使用最小或最大长度。

  • 如果创建闭合多面体,输出将被拉伸到基础高程参数中定义的高度,并且将创建一个水平环以形成闭合几何的底部。 如果指定的基础高程大于天际线障碍物中的最高顶点,则基础将为顶面。

  • 新多面体要素类将包含以下字段:

    • OBSV_PT_ID观察点的 FID,通过它来创建天际线,转而用天际线来创建天际线障碍物多面体。
    • ORIGFTR_ID以天际线线段或用来创建阴影体的轮廓表示的原始要素(如建筑物)的 FID。
    • SILHOUE_ID用来创建阴影体的多面体要素(轮廓)的 FID(只用于轮廓)。

参数

标注说明数据类型
输入观察点要素

包含观察点的点要素类。

Feature Layer
输入要素

表示天际线的输入线要素类,或表示轮廓的输入多面体要素类。

Feature Layer
输出要素类

将放置天际线障碍物或阴影体积的输出要素类。

Feature Class
最小半径
(可选)

三角形边将从观察点延伸的最小半径。 例如,值为 10 米意味着所有输出障碍物要素将从其原点延伸至少 10 米。 默认值为 0,表示不强制执行最小距离。

Linear Unit; Field
最大半径
(可选)

三角形边将从观察点延伸的最大半径。 默认值为 0,表示不强制执行最大距离。

Linear Unit; Field
闭合
(可选)

指定是否将向天际线障碍物添加裙状伪影和基础高程,以便多面体显示为闭合实体。

  • 未选中 - 不会向多面体添加裙状伪影和基础高程;仅表示从观察点到天际线的表面的多面体。 这是默认设置。
  • 选中 - 将向多面体添加裙状伪影和基础高程以形成闭合实体外观。
Boolean
基础高程
(可选)

闭合多面体的基础高程。 如果未选中闭合参数,则忽略此参数。 默认值为 0。

Linear Unit; Field
投影到平面
(可选)

指定障碍物的正面(靠近观察点)和背面(远离观察点)是否将分别投影到垂直平面上。 通常情况下,将选中此选项以创建阴影体。

  • 未选中 - 障碍物将从观察点延伸到天际线(如果为最小半径和最大半径提供非零值,则将更近或更远)。 这是默认设置。
  • 选中 - 障碍物将从一个垂直平面延伸到另一垂直平面。
Boolean

arcpy.ddd.SkylineBarrier(in_observer_point_features, in_features, out_feature_class, {min_radius_value_or_field}, {max_radius_value_or_field}, {closed}, {base_elevation}, {project_to_plane})
名称说明数据类型
in_observer_point_features

包含观察点的点要素类。

Feature Layer
in_features

表示天际线的输入线要素类,或表示轮廓的输入多面体要素类。

Feature Layer
out_feature_class

将放置天际线障碍物或阴影体积的输出要素类。

Feature Class
min_radius_value_or_field
(可选)

三角形边将从观察点延伸的最小半径。 例如,值为 10 米意味着所有输出障碍物要素将从其原点延伸至少 10 米。 默认值为 0,表示不强制执行最小距离。

Linear Unit; Field
max_radius_value_or_field
(可选)

三角形边将从观察点延伸的最大半径。 默认值为 0,表示不强制执行最大距离。

Linear Unit; Field
closed
(可选)

指定是否将向天际线障碍物添加裙状伪影和基础高程,以便多面体显示为闭合实体。

  • NO_CLOSED不会向多面体添加裙状伪影和基础高程;仅表示从观察点到天际线的表面的多面体。 这是默认设置。
  • CLOSED将向多面体添加裙状伪影和基础高程以形成闭合实体外观。
Boolean
base_elevation
(可选)

闭合多面体的基础高程。 如果 closed 参数设置为 NO_CLOSED,则忽略此参数。 默认值为 0。

Linear Unit; Field
project_to_plane
(可选)

指定障碍物的正面(靠近观察点)和背面(远离观察点)是否将分别投影到垂直平面上。 通常情况下,此选项设置为 PROJECT_TO_PLANE 以创建阴影体。

  • NO_PROJECT_TO_PLANE障碍物将从观察点延伸到天际线(如果为最小半径和最大半径提供非零值,则将更近或更远)。 这是默认设置。
  • PROJECT_TO_PLANE障碍物将从一个垂直平面延伸到另一垂直平面。
Boolean

代码示例

SkylineBarrier 示例 1(Python 窗口)

下面的示例演示了如何在 Python 窗口中使用此工具。

arcpy.env.workspace = "C:/data"
arcpy.ddd.SkylineBarrier("observers.shp", "skyline_outline.shp", 
                        "barrier_output.shp")
SkylineBarrier 示例 2(独立脚本)

下面的示例演示了如何在独立 Python 脚本中使用此工具。

'''****************************************************************************
Name: Skyline Barrier Example
Description: This script demonstrates how to use the 
             Skyline Barrier tool.

****************************************************************************'''
# Import system modules
import arcpy

# Set environment settings
arcpy.env.workspace = 'C:/data'
# Set Local Variables
inPts = 'observers.shp'
inLine = 'skyline.shp'
outFC = 'output_barriers.shp'
minRadius = '0 METERS'
maxRadius = '200 METERS'

#Execute SkylineBarrier
arcpy.ddd.SkylineBarrier(inPts, inLine, outFC, minRadius,
                      maxRadius, 'CLOSED')

相关主题