标注 | 说明 | 数据类型 |
输入观察点 | 输入观察点。 | Feature Set |
输入表面 | 输入高程栅格表面。 高程表面必须进行投影。 | Raster Layer; Mosaic Dataset; Mosaic Layer |
输出视域要素类 | 用于显示可见和不可见区域的输出面要素类。 | Feature Class |
输出视域轮廓要素类 | 包含扇形视域的输出面要素类。 | Feature Class |
输出范围 | 输出面要素类,其中包含由范围半径、起始角和终止角创建的查看扇区。 | Feature Class |
观察点高度偏移(米) (可选) | 观察点表面高程以上的高度。 默认值为 2。 | Double |
最小距离(米) (可选) | 距离分析中所考虑的观察点的最小(最近)距离,以米为单位。 默认值为 1000。 | Double |
最大距离(米) (可选) | 距离分析中所考虑的观察点的最大(最远)距离,以米为单位。 默认值为 3000。 | Double |
水平起始角(度) (可选) | 左轴承限制,以度为单位。 默认值为 0。 | Double |
水平终止角(度) (可选) | 右轴承限制,以度为单位。 默认值为 360。 | Double |
需要 3D Analyst 许可。
摘要
可以根据给定距离和视角,显示一个或多个指定观察点位置的可见区域。
使用情况
添加到地图后,观察点可见的输出区域将显示为绿色,而不可见的区域将显示为红色。
此工具会生成一个扇形视域面要素类,以代表观察点参数覆盖的整个区域。
参数
arcpy.defense.RadialLineOfSightAndRange(in_observer_features, in_surface, out_viewshed_feature_class, out_fov_feature_class, out_range_radius_feature_class, {observer_height_offset}, {inner_radius}, {outer_radius}, {horizontal_start_angle}, {horizontal_end_angle})
名称 | 说明 | 数据类型 |
in_observer_features | 输入观察点。 | Feature Set |
in_surface | 输入高程栅格表面。 高程表面必须进行投影。 | Raster Layer; Mosaic Dataset; Mosaic Layer |
out_viewshed_feature_class | 用于显示可见和不可见区域的输出面要素类。 | Feature Class |
out_fov_feature_class | 包含扇形视域的输出面要素类。 | Feature Class |
out_range_radius_feature_class | 输出面要素类,其中包含由范围半径、起始角和终止角创建的查看扇区。 | Feature Class |
observer_height_offset (可选) | 观察点表面高程以上的高度。 默认值为 2。 | Double |
inner_radius (可选) | 距离分析中所考虑的观察点的最小(最近)距离,以米为单位。 默认值为 1000。 | Double |
outer_radius (可选) | 距离分析中所考虑的观察点的最大(最远)距离,以米为单位。 默认值为 3000。 | Double |
horizontal_start_angle (可选) | 左轴承限制,以度为单位。 默认值为 0。 | Double |
horizontal_end_angle (可选) | 右轴承限制,以度为单位。 默认值为 360。 | Double |
代码示例
以下 Python 窗口脚本演示了如何使用 RadialLineOfSightAndRange 函数。
import arcpy
arcpy.env.workspace = r"C:/Data.gdb"
arcpy.defense.RadialLineOfSightAndRange("LLOS_Tar", "n36.dt2",
"Viewshed", "FieldOfView",
"Range",
2, 1000, 3000, 0, 360)
以下示例将在示例工作流脚本中使用 RadialLineOfSightAndRange 函数。
# Description: Create Radial Line of Sight and Range to test siting of an antenna
# antennas
# 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.management.MakeFeatureLayer(antenna_layer, whereClause)
# Inputs
input_surface = "n36.dt2"
# Create radial line of sight for antennas
arcpy.defense.RadialLineOfSightAndRange(test_obs_layer, input_surface,
"Viewshed", "FieldOfView", "Range",
2, 1000, 3000, 0, 360)