當前位置: 首頁>>編程示例 >>用法及示例精選 >>正文


Python ArcGIS viewshed用法及代碼示例

本文簡要介紹 python 語言中 arcgis.features.elevation.viewshed 的用法。

用法:

arcgis.features.elevation.viewshed(input_points={'displayFieldName': '', 'exceededTransferLimit': False, 'features': [], 'fields': [{'name': 'OID', 'type': 'esriFieldTypeOID', 'alias': 'OID'}, {'name': 'offseta', 'type': 'esriFieldTypeDouble', 'alias': 'offseta'}, {'name': 'offsetb', 'type': 'esriFieldTypeDouble', 'alias': 'offsetb'}], 'geometryType': 'esriGeometryPoint', 'spatialReference': {'latestWkid': 3857, 'wkid': 102100}}, maximum_distance=None, maximum_distance_units='Meters', dem_resolution=None, observer_height=None, observer_height_units='Meters', surface_offset=None, surface_offset_units='Meters', generalize_viewshed_polygons=True, gis=None, future=False)

返回:

output_viewshed - 將視域輸出為 FeatureSet(給定一組輸入觀察點的可見區域多邊形。)

elevation_viewshed.png

viewshed 方法用於根據您提供的觀察者位置以及 ArcGIS 在線高程數據來識別可見區域。

Parameter

Description

input_points

所需的函數集。用作觀察者位置的點要素。請參閱特征輸入。

maximum_distance

可選浮點數。這是可見區域計算停止的截止距離。超出這個距離,不知道分析點和其他物體是否能看到對方。

它對於模擬當前天氣狀況或一天中的給定時間(例如黃昏)很有用。較大的值會增加計算時間。

除非指定,否則將根據源 DEM 的分辨率和範圍計算默認最大距離。允許的最大值為 50 公裏。

使用 maximum_distance_units 設置 maximum_distance 的單位。

maximum_distance_units

可選字符串。 maximum_distance 參數的單位。

選擇列表:[“米”、“公裏”、“英尺”、“碼”、“英裏”]。

默認值為“米”。

dem_resolution

可選字符串。用於計算的源高程數據的近似空間分辨率(像元大小)。分辨率值是數字高程模型的空間分辨率的近似值。雖然許多高程源以弧秒為單位分布,但關鍵字是這些分辨率的近似值,以米為單位,以便於理解。

選擇列表:[‘ ‘, ‘FINEST’, ‘10m’, ‘30m’, ‘90m’]。

默認值為 90m。

observer_height

可選浮點數。這是觀察者位置離地麵的高度。

默認值為 1.75 米,大約是一個人的平均身高。如果您從高處觀看,例如觀景塔或高層建築,請改用該高度。

使用 observer_height_units 設置 observer_height 的單位。

observer_height_units

可選字符串。 observer_height 參數的單位。

選擇列表:[“米”、“公裏”、“英尺”、“碼”、“英裏”]

surface_offset

可選浮點數。您要查看的對象表麵上方的高度。

默認值為 0.0。如果您想查看建築物或風力渦輪機,請在此處使用它們的高度。

surface_offset_units

可選字符串。 surface_offset 參數的單位。

選擇列表:[“米”、“公裏”、“英尺”、“碼”、“英裏”]

generalize_viewshed_polygons

可選的布爾值。確定是否要概化視域多邊形。

視域計算基於柵格高程模型,該模型創建帶有 stair-stepped 邊的結果。為了創建更令人愉悅的外觀並提高性能,默認行為是概括多邊形。泛化過程平滑了可見區域的邊界,並且可以去除一些單細胞可見區域。

future

可選的布爾值。如果為 True,則結果將為 GPJob,並且結果將異步返回。

例子:

# USAGE EXAMPLE: To identify visible areas from esri headquarter office.
visible_windfarms = viewshed(input_points=hq_fs,
                             maximum_distance=200,
                             maximum_distance_units='Meters',
                             observer_height=6,
                             observer_height_units='Feet',
                             surface_offset=100,
                             surface_offset_units='Meters',
                             generalize_viewshed_polygons=True)

相關用法


注:本文由純淨天空篩選整理自arcgis.com大神的英文原創作品 arcgis.features.elevation.viewshed。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。