名前

ST_Scale — ラメータで軸を乗算してジオメトリを新しいサイズに拡大縮小します。ST_Scale(geom, Xfactor, Yfactor, Zfactor)となります。

概要

geometry ST_Scale(geometry geomA, float XFactor, float YFactor, float ZFactor);

geometry ST_Scale(geometry geomA, float XFactor, float YFactor);

説明

パラメータで軸を乗算してジオメトリを新しいサイズに拡大縮小します。ST_Scale(geom, Xfactor, Yfactor, Zfactor)となります。

[注記]

ST_Scale(geomA, XFactor, YFactor, ZFactor)ST_Affine(geomA, XFactor, 0, 0, 0, YFactor, 0, 0, 0, ZFactor, 0, 0, 0)の短縮版です。

[注記]

1.3.4より前は、曲線を含むジオメトリで使うとクラッシュしました。これは1.3.4以降では訂正されています。

初出: 1.1.0

機能強化: 2.0.0では、多面体サーフェス、三角形、TINが導入されました。

この関数は多面体サーフェスに対応しています。

この関数は3次元に対応し、Z値を削除しません。

このメソッドは曲線ストリングと曲線に対応しています。

この関数は三角形と不整三角形網(TIN)に対応しています。

-- ひとつめ: X, Y, Zの拡大縮小
SELECT ST_AsEWKT(ST_Scale(ST_GeomFromEWKT('LINESTRING(1 2 3, 1 1 1)'), 0.5, 0.75, 0.8));
                          st_asewkt
--------------------------------------
 LINESTRING(0.5 1.5 2.4,0.5 0.75 0.8)

-- ふたつめ: X, Yの拡大縮小
 SELECT ST_AsEWKT(ST_Scale(ST_GeomFromEWKT('LINESTRING(1 2 3, 1 1 1)'), 0.5, 0.75));
                        st_asewkt
----------------------------------
 LINESTRING(0.5 1.5 3,0.5 0.75 1)


関連情報

ST_Affine, ST_TransScale