通视性 (3D Analyst)

许可等级:BasicStandardAdvanced

摘要

确定视线穿过潜在障碍物的可见性。潜在障碍物可以是栅格、TIN、多面体和拉伸面或线的任意组合。

用法

语法

Intervisibility_3d (sight_lines, obstructions, {visible_field})
参数说明数据类型
sight_lines

3D 视线。

Feature Layer
obstructions
[obstructions,...]

阻碍视线的一个或多个要素类和/或表面。

Feature Layer, Raster Layer, TIN Layer
visible_field
(可选)

要存储可见性结果的字段的名称。生成的值 0 表示视线的起点和终点相互不可见。值 1 表示视线的起点和终点相互可见。默认字段名称为 VISIBLE

String

代码实例

通视性示例 1(Python 窗口)

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

arcpy.CheckOutExtension("3D")
arcpy.env.workspace = "C:/data"
arcpy.Intervisibility_3d("sightlines.shp", "3dbuildings.shp;topo_tin", "Visibility")
通视性示例 2(独立窗口)

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

此脚本演示如何根据以表面表示的障碍物和/或以多面体表示的建筑物来计算视线的通视性。

# Import system modules
import arcpy

try:
    # Checking out 3D Analyst Extension
    arcpy.CheckOutExtension("3D")

    # Set environments
    arcpy.env.workspace = 'C:/data'

    # Setting up input and output variables
    sightlines = "My_Sightlines.shp"
    surface = "DTM_Tin"
    buildings = "My_3D_Buildings.shp"
    viz_field_name = "Visibility"

    print("Calculating Intervisibility...")
    arcpy.Intervisibility_ddd(
        sightlines, surface + ';' + buildings, viz_field_name)
except arcpy.ExecuteError:
    print(arcpy.GetMessages(2))
finally:
    arcpy.CheckInExtension("3D")

环境

相关主题

许可信息

ArcGIS for Desktop Basic: 需要 3D Analyst
ArcGIS for Desktop Standard: 需要 3D Analyst
ArcGIS for Desktop Advanced: 需要 3D Analyst
5/10/2014