欧氏距离 (空间分析)

摘要

计算每个像元到最近源的欧氏距离。

了解有关欧氏距离分析的详细信息

插图

Euclidean Distance illustration
Euc_Dist = EucDistance(Source_Ras)

用法

语法

EucDistance (in_source_data, {maximum_distance}, {cell_size}, {out_direction_raster})
参数说明数据类型
in_source_data

输入源位置。

此为栅格或要素数据集,用于标识计算每个输出像元位置的欧氏距离所依据的像元或位置。

对于栅格,输入类型可以为整型或浮点型。

Raster Layer | Feature Layer
maximum_distance
(可选)

定义累积距离值不能超过的阈值。

如果累积的欧氏距离值超过该值,则像元位置的输出值为 NoData。

默认距离是到输出栅格边的距离。

Double
cell_size
(可选)

要创建的输出栅格的像元大小。

如果已明确设置该像元大小,则为环境中的值。如果未设置为环境中的值,默认像元大小取决于输入源数据是栅格还是要素,具体如下:

  • 如果源是栅格,则输出的像元大小不变。
  • 如果源是要素,则输出像元大小由输入空间参考中输入要素范围的宽度或高度中的较小值除以 250 来确定。

Analysis Cell Size
out_direction_raster
(可选)

输出欧氏方向栅格。

此方向栅格包含计算的方向(以度为单位),每个像元中心都来自最近的源像元中心。

值的范围是 0 度到 360 度,并为源像元保留 0 度。正东(右侧)是 90 度,且值以顺时针方向增加(180 是南方、270 是西方以及 360 是北方)。

输出栅格为整型。

Raster Dataset

返回值

名称说明数据类型
out_distance_raster

输出欧氏距离栅格。

此距离栅格标识每个像元至最近源像元、源像元集或源位置的欧氏距离。

输出栅格为浮点型。

Raster

代码示例

EucDistance 示例 1(Python 窗口)

以下 Python 窗口脚本演示了 EuclideanDistance 工具的使用方法。

import arcpy
from arcpy import env
from arcpy.sa import *
env.workspace = "C:/sapyexamples/data"
outEucDistance = EucDistance("rec_sites.shp", 5000, 5, 
                             "c:/sapyexamples/output/EucDirOut")
outEucDistance.save("C:/sapyexamples/output/eucdist")
EucDistance 示例 2(独立脚本)

计算每个像元到最近源的直线距离。

# Name: EucDistance_Ex_02.py
# Description: Calculates for each cell the Euclidean distance to the nearest source.
# 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
inSourceData = "rec_sites.shp"
maxDistance = 4000
cellSize = 4
outDirectionRaster = "C:/sapyexamples/output/eucdirect"

# Check out the ArcGIS Spatial Analyst extension license
arcpy.CheckOutExtension("Spatial")

# Execute EucDistance
outEucDistance = EucDistance(inSourceData, maxDistance, cellSize, outDirectionRaster)

# Save the output 
outEucDistance.save("C:/sapyexamples/output/eucdist")

环境

相关主题

许可信息

ArcView: 需要 Spatial Analyst
ArcEditor: 需要 Spatial Analyst
ArcInfo: 需要 Spatial Analyst

7/10/2012