视点分析 (空间分析)
用法
-
确定观察点是信息密集型处理。处理时间取决于分辨率。对于初级研究,您可能需要使用粗糙像元大小来减少输入中的像元数。已准备好生成最终结果时,将使用全分辨率栅格。
如果输入栅格含有因采样错误导致的不希望出现的噪点,则在运行此工具之前,可使用低通滤波器(如焦点统计的“平均值”选项)对栅格进行平滑处理。
-
每个像元中心的可见性可通过比较与像元中心所成的高度角和与本地地平线所成的高度角来确定。计算本地地平线时要考虑观测点和当前像元中心之间的中间地形。如果该点位于本地地平线之上,则视其为可见。
语法
ObserverPoints (in_raster, in_observer_point_features, {z_factor}, {curvature_correction}, {refractivity_coefficient})
参数 | 说明 | 数据类型 |
in_raster |
输入表面栅格。 | Raster Layer |
in_observer_point_features |
用于识别观察点位置的点要素类。 允许的最大点数为 16。 | Feature Layer |
z_factor (可选) | 一个表面 z 单位中地面 x,y 单位的数量。 z 单位与输入表面的 x,y 单位不同时,可使用 z 因子调整 z 单位的测量单位。计算最终输出表面时,将用 z 因子乘以输入表面的 z 值。 如果 x,y 单位和 z 单位采用相同的测量单位;则 z 因子为 1。这是默认值。 如果 x,y 单位和 z 单位采用不同的测量单位,则必须将 z 因子设置为适当的因子,否则会得到错误的结果。例如,如果 z 单位是英尺而 x,y 单位是米,则应使用 z 因子 0.3048 将 z 单位从英尺转换为米(1 英尺 = 0.3048 米)。 | Double |
curvature_correction (可选) |
允许对地球的曲率进行校正。
| Boolean |
refractivity_coefficient (可选) |
空气中可见光的折射系数。 默认值为 0.13。 | Double |
返回值
名称 | 说明 | 数据类型 |
out_raster |
输出栅格。 输出将精确识别从各栅格表面位置进行观察时可见的观察点。 | Raster |
代码示例
ObserverPoints 示例 1(Python 窗口)
在此示例中,将精确识别从各栅格表面位置进行观察时可见的观察点。
import arcpy from arcpy import env from arcpy.sa import * env.workspace = "C:/sapyexamples/data" outObsPoints = ObserverPoints("elevation","observers.shp", 1, "CURVED_EARTH", 0.13) outObsPoints.save("C:/sapyexamples/output/outobspnt01")
ObserverPoints 示例 2(独立脚本)
在此示例中,将精确识别从各栅格表面位置进行观察时可见的观察点。
# Name: ObserverPoints_Ex_02.py # Description: Identifies exactly which observer points are visible # from each raster surface location. # Requirements: Spatial Analyst Extension # Import system modules import arcpy from arcpy import env from arcpy.sa import * # Set environment settings env.workspace = "C:/sapyexamples/data" # Set local variables inRaster = "elevation" inObsPoints = "observers.shp" zFactor = 1 useEarthCurv = "CURVED_EARTH" refractionVal = 0.13 # Check out the ArcGIS Spatial Analyst extension license arcpy.CheckOutExtension("Spatial") # Execute ObserverPoints outObsPoints = ObserverPoints(inRaster, inObsPoints, zFactor, useEarthCurv, refractionVal) # Save the output outObsPoints.save("C:/sapyexamples/output/outobspnt02")
相关主题
许可信息
ArcView: 需要 Spatial Analyst 或 3D Analyst
ArcEditor: 需要 Spatial Analyst 或 3D Analyst
ArcInfo: 需要 Spatial Analyst 或 3D Analyst
7/10/2012