名前

ST_SetScale — ピクセルのXとYのサイズを空間参照系の単位で設定します。数値はunits/pixelで、幅、高さの順です。

概要

raster ST_SetScale(raster rast, float8 xy);

raster ST_SetScale(raster rast, float8 x, float8 y);

説明

ピクセルのXとYのサイズを空間参照系の単位で設定します。数値はunits/pixelで、幅、高さの順です。1つの数値だけを渡した場合には、XとYは同じ値であると仮定します。

[注記]

ST_SetScaleはST_Rescaleと異なります。ST_SetScaleはラスタの範囲をあわせるためのリサンプリングをしません。根本的に誤った設定を行ったのを訂正するためにラスタのメタデータ(地理参照)を変更するだけです。ST_Rescaleは、入力ラスタの地理範囲に合わせて計算された幅、高さを持つラスタを返します。ST_SetScaleはラスタの幅も高さも変更しません。

変更: 2.0.0 WKTRaster版ではこれはST_SetPixelSizeと呼ばれていました。2.0.0で変更されました。

UPDATE dummy_rast 
	SET rast = ST_SetScale(rast, 1.5)
WHERE rid = 2;

SELECT ST_ScaleX(rast) As pixx, ST_ScaleY(rast) As pixy, Box3D(rast) As newbox
FROM dummy_rast
WHERE rid = 2;

 pixx | pixy |                    newbox
------+------+----------------------------------------------
  1.5 |  1.5 | BOX(3427927.75 5793244 0, 3427935.25 5793251.5 0)
				
UPDATE dummy_rast 
	SET rast = ST_SetScale(rast, 1.5, 0.55)
WHERE rid = 2;

SELECT ST_ScaleX(rast) As pixx, ST_ScaleY(rast) As pixy, Box3D(rast) As newbox
FROM dummy_rast
WHERE rid = 2;

 pixx | pixy |                   newbox
------+------+--------------------------------------------
  1.5 | 0.55 | BOX(3427927.75 5793244 0,3427935.25 5793247 0)
				

関連情報

ST_ScaleX, ST_ScaleY, Box3D