将指定的raster对象进行镶嵌操作,合并成为一个新的raster对象。

语法

raster ST_MosaicFrom(raster source[],  cstring chunkTableName);

参数

参数名称 描述
source 需要拼接的源raster对象。
chunkTableName 拼接完成的块表名称,必须符合数据库表名规范。

描述

镶嵌函数会创建一个新的raster对象。

所有指定的raster对象需要满足以下条件:
  • 具有相同的波段数。
  • 所有的raster对象要么都进行了地理参考,要么都不是。如果都是地理参考,则采用世界坐标镶嵌。
  • 指定raster对象的像素类型可以不同。如果是世界坐标镶嵌,则SRID、仿射参数必须一致。

涉及的数据库参数如下。

参数 类型 说明
ganos.raster.mosaic_must_same_nodata boolean 指定镶嵌时数据源的nodata值是否必须一致。取值:true | false。镶嵌时并不会对nodata值进行转换,如果选择可以不一致(false),可能会导致镶嵌后的像素语义不一致。示例:
Set ganos.raster.mosaic_must_same_nodata = false;

示例

INSERT INTO raster_table VALUES(1, ST_MosaicFrom(Array(SELECT raster_obj FROM raster_table WHERE id < 10), 'chunk_table_mosaic'))
UPDATE raster_table SET raster_obj = ST_MosaicFrom(Array(SELECT raster_obj FROM raster_table WHERE id < 10), 'chunk_table_mosaic') WHERE id = 11;