Name

ST_MinDist4ma — 返回感兴趣像素与具有值的相邻像素之间的最小距离(以像素数为单位)的栅格处理函数。

Synopsis

double precision ST_MinDist4ma(double precision[][][] value, integer[][] pos, text[] VARIADIC userargs);

描述

返回感兴趣的像素与邻域中具有值的最近像素之间的最短距离(以像素数为单位)。

[Note]

此函数的目的是提供信息丰富的数据点,帮助从ST_InvDistWeight4ma推断感兴趣像素的插值的有用性。 当社区人口稀少时,此功能特别有用。

[Note]

该函数是一个专门的回调函数,用作 ST_MapAlgebra (callback function version)(回调函数版本)的回调参数。

可用性:2.1.0

示例

WITH foo AS (
    SELECT ST_SetValues(ST_AddBand(ST_MakeEmptyRaster(3, 3, 0, 0, 1, -1, 0, 0, 0), 1, '32BF', NULL::double precision, -9999),
        1, 1, 1, ARRAY[
            [10, 10, 10],
            [10, NULL, 20],
            [20, 20, 20]
        ]::double precision[][]
    ) AS rast
)
SELECT ST_Value(
    ST_MapAlgebra(
        rast,
        1,
        'ST_MinDist4ma(double precision[][][],integer[][],text[])'::regprocedure,
        '32BF',
        'FIRST',
        NULL,
        1,
        1
    ),
    2, 2
) AS min_distance
FROM foo;
1