线性通视分析 (Defense)

在 Advanced 许可等级下可用。

需要 3D Analyst 许可。

描述

在观察点和目标之间创建视线。

使用方法

  • 此工具使用 3D Analyst 工具箱中的构造视线通视分析

  • 观察点和目标分别是用于确定可见性的线的起点和终点。

  • 将使用一个或多个观察点和一个或多个目标点要素。

  • 所有观察点均需要与所有目标匹配。

  • 将对结果行着色以显示可见部分(绿色)和不可见部分(红色)。

  • 以下字段将被添加到输出视线要素类

    • OID_OBSERV - 用于创建视线的观察点的对象 ID
    • OID_TARGET - 用于创建视线的目标点的对象 ID
    • TarIsVis - 用于指示目标在各视线上对观察点可见 (1) 或不可见 (0)
    • AZIMUTH - 从观察点位置到目标的方位角
    • VERT_ANGLE - 从观察点到目标的向上或向下(负)视角
  • 以下字段将被添加到输出通视分析要素类

    • OID_OBSERV - 用于创建视线的观察点的对象 ID
    • OID_TARGET - 用于创建视线的目标点的对象 ID
    • VisCode - 用于指示表面片段对观察点可见可见 (1) 或不可见 (2)
    • TarIsVis - 用于指示目标在各视线上对观察点可见 (1) 或不可见 (0)
    • AZIMUTH - 从观察点位置到目标的方位角
    • ObsSPOT - 观察点的高度
    • TgtSPOT - 目标的高度
  • 以下字段将被添加到输出观察点要素类

    • OID_OBSERV - 用于创建通视分析的观察点的对象 ID
    • OID_TARGET - 用于创建通视分析的目标点的对象 ID
    • AZIMUTH - 从观察点位置到目标的方位角
    • VERT_ANGLE - 从观察点到目标的向上或向下(负)视角
    • TarIsVis - 用于指示目标在各视线上对观察点可见 (1) 或不可见 (0)
    • Z - 观察点位置的表面高程
    • ObsSPOT - 观察点的高度
  • 以下字段将被添加到输出目标要素类

    • OID_OBSERV - 用于创建通视分析的观察点的对象 ID
    • OID_TARGET - 用于创建通视分析的目标点的对象 ID
    • AZIMUTH - 从观察点位置到目标的方位角
    • VERT_ANGLE - 从观察点到目标的向上或向下(负)视角
    • TarIsVis - 用于指示目标在各视线上对观察点可见 (1) 或不可见 (0)
    • Z - 目标位置的表面高程
    • TgtSPOT - 目标的高度
  • 高度单位以高程表面单位为单位。

  • 如果输入表面支持地球曲率和折射率计算,则该工具将使用它们。

  • 如果使用了障碍物要素,则生成的表面剖面线将不遵循表面剖面,而是直接在观察点和目标之间延伸。这将更改可选的剖面图。

语法

arcpy.defense.LinearLineOfSight(in_observer_features, in_target_features, in_surface, out_los_feature_class, out_sight_line_feature_class, out_observer_feature_class, out_target_feature_class, {in_obstruction_features}, {observer_height_above_surface}, {target_height_above_surface}, {add_profile_attachment})
参数说明数据类型
in_observer_features

输入观察点。

Feature Set
in_target_features

输入目标点。

Feature Set
in_surface

输入高程栅格表面。

Raster Layer
out_los_feature_class

用于显示可见和不可见表面区域线的输出要素类。

Feature Class
out_sight_line_feature_class

用于显示观察点与目标之间的直接视线的输出线要素类。

Feature Class
out_observer_feature_class

输出观察点要素类。

Feature Class
out_target_feature_class

输出目标点要素类。

Feature Class
in_obstruction_features
(可选)

可能会遮挡视线的输入多面体要素。

Feature Layer
observer_height_above_surface
(可选)

观察点表面高程以上的高度。默认值为 2。

Double
target_height_above_surface
(可选)

目标表面高程以上的高度。默认值为 0。

Double
add_profile_attachment
(可选)

指定工具是否将观察点和目标之间的剖面(横截面地形图)附件添加到要素。

  • NO_PROFILE_GRAPH将不会添加剖面图。这是默认设置。
  • ADD_PROFILE_GRAPH将添加剖面图。
Boolean

代码示例

LinearLineOfSight 示例 1(Python 窗口)

以下 Python 窗口脚本演示了如何使用 LinearLineOfSight 函数。

import arcpy
arcpy.env.workspace = r"C:/Data.gdb"
arcpy.LinearLineOfSight_defense("LLOS_Obs",
                                "LLOS_Tar",
                                "n36.dt2",
                                "LineOfSight",
                                "SightLines",
                                "Observers",
                                "Targets",
                                None,
                                2,
                                0,
                                "NO_PROFILE_GRAPH")
LinearLineOfSight 示例 2(独立脚本)

以下示例将在示例工作流脚本中使用 LinearLineOfSight 函数。

# Description: Create Linear Line of Sight to test siting of a radio antenna
# Import system modules
import arcpy
# Set environment settings
arcpy.env.workspace = r"C:/Data.gdb"
# Select antenna to test
antenna_layer = "antennas"
whereClause = "antenna_call_sign = 'KJT'"
test_ant_layer = arcpy.MakeFeatureLayer_management(antenna_layer, whereClause)
# Select observer test location
obs_layer = "observer_locations"
whereClause = "site_name = 'test_site'"
test_obs_layer = arcpy.MakeFeatureLayer_management(obs_layer, whereClause)
# Inputs
input_surface = "n36.dt2"
# Create line of sight between selected antenna and observer locations
arcpy.LinearLineOfSight_defense(test_obs_layer,
                                test_ant_layer,
                                input_surface,
                                "LineOfSight",
                                "SightLines",
                                "Test_Observers",
                                "Test_Targets",
                                None,
                                2,
                                0,
                                "NO_PROFILE_GRAPH")

许可信息

  • Basic: 否
  • Standard: 否
  • Advanced: 是

相关主题