Name

ST_InterpolateRaster — 基于输入的 3 维点集插值网格表面,使用 X 和 Y 值在网格上定位点,并使用点的 Z 值作为表面高程。

Synopsis

raster ST_InterpolateRaster(geometry input_points, text algorithm_options, raster template, integer template_band_num=1);

描述

基于输入的 3 维点集插值网格表面,使用 X 和 Y 值在网格上定位点,并使用点的 Z 值作为表面高程。 有五种可用的插值算法:反距离、反距离最近邻、移动平均、最近邻和线性插值。 有关算法及其参数的更多详细信息,请参阅 gdal_grid 文档。 有关如何计算插值的更多信息,请参阅 GDAL 网格教程

输入参数为:

input_points

驱动插值的点。 任何具有 Z 值的几何图形都是可接受的,将使用输入中的所有点。

algorithm_options

定义算法和算法选项的字符串,采用 gdal_grid 使用的格式。 例如,对于平滑度为 2 的反距离插值,您可以使用“invdist:smoothing=2.0”

template

用于驱动输出栅格几何形状的栅格模板。 宽度、高度、像素大小、空间范围和像素类型将从该模板中读取。

template_band_num

默认情况下,模板栅格中的第一个波段用于驱动输出栅格,但可以使用此参数进行调整。

可用性:3.2.0

示例

SELECT ST_InterpolateRaster(
    'MULTIPOINT(10.5 9.5 1000, 11.5 8.5 1000, 10.5 8.5 500, 11.5 9.5 500)'::geometry,
    'invdist:smoothing:2.0',
    ST_AddBand(ST_MakeEmptyRaster(200, 400, 10, 10, 0.01, -0.005, 0, 0), '16BSI')
)

相关信息

ST_Contour