ST_RasterToWorldCoord — ラスターの指定した列と行における左上隅の地理座標 X 値と Y 値 (経度と緯度) を返します。列と行の番号は 1始まりです。
record ST_RasterToWorldCoord(raster rast, integer xcolumn, integer yrow);
ラスターの指定した列と行における左上隅の地理座標 X 値と Y 値 (経度と緯度) を返します。X 値と Y 値の単位は、地理参照されたラスターの地理単位です。列と行の数字は 1始まりですが、引数に 0、負数またはラスターのピクセル範囲を超える値が渡されている場合には、ラスターのグリッドがラスター範囲外に適用できると仮定して、範囲外の座標を返します。
Availability: 2.1.0
この例ではスキューなしのラスターを使っています。
SELECT
rid,
(ST_RasterToWorldCoord(rast, 1, 1)).*,
(ST_RasterToWorldCoord(rast, 2, 2)).*
FROM dummy_rast
rid | longitude | latitude | longitude | latitude -----+------------+----------+-----------+------------ 1 | 0.5 | 0.5 | 2.5 | 3.5 2 | 3427927.75 | 5793244 | 3427927.8 | 5793243.95
この例ではスキューのかかったラスターを使っています。
SELECT
rid,
(ST_RasterToWorldCoord(rast, 1, 1)).*,
(ST_RasterToWorldCoord(rast, 2, 3)).*
FROM (
SELECT
rid,
ST_SetSkew(rast, 100.5, 0) As rast
FROM dummy_rast
) As foo
rid | longitude | latitude | longitude | latitude -----+------------+----------+-----------+----------- 1 | 0.5 | 0.5 | 203.5 | 6.5 2 | 3427927.75 | 5793244 | 3428128.8 | 5793243.9