このトピックでは、ST_Scale関数について説明します。 この関数は、座標値に対応する係数を乗算することにより、ジオメトリオブジェクトを新しいサイズにスケーリングします。
構文
ジオメトリST_Scale (ジオメトリgeomA、float xFactor、float yFactor、float zFactor);
ジオメトリST_Scale (ジオメトリgeomA、float xFactor、float yFactor);
ジオメトリST_Scale(geometry geom、geometry factor);
ジオメトリST_Scale(geometry geom , geometry factor , geometry origin);
パラメーター
パラメーター | 説明 |
geomA/geom | 指定するジオメトリオブジェクト。 |
xFactor | x座標の値の係数。 |
yFactor | y座標の値の係数。 |
zFactor | y座標の値の係数。 |
要因 | スケーリング係数。 |
起源 | スケーリングの原点。 |
説明
- ファクターパラメーターを2D、3DM、3DZ、または4Dポイントオブジェクトに指定できます。 この構成により、サポートされるすべてのディメンションのスケーリング係数が保証されます。 xFactor、yFactor、またはzFactorパラメーターが指定されていない場合、ジオメトリオブジェクトの対応するディメンションに対してスケーリングは実行されません。
- この関数は、円形ストリング、カーブ、多面体サーフェス、三角形、三角形不規則ネットワーク (TIN) サーフェス、および3Dオブジェクトをサポートします。
- この関数は、m座標を含むジオメトリオブジェクトをサポートします。
- originパラメーターを指定すると、ST_Scale関数はすぐにジオメトリオブジェクトをスケーリングします。 たとえば、ジオメトリオブジェクトの重心をスケーリングの原点として指定できます。 originパラメーターを指定しない場合、ST_Scale関数は、ジオメトリオブジェクトの実際の原点を基準にしてジオメトリオブジェクトをスケーリングします。 この場合、この関数は、座標値に対応する因子パラメータの値を乗算することによってジオメトリオブジェクトをスケーリングします。
例
- デフォルトのパラメーター設定を使用して、ジオメトリオブジェクトをスケーリングします。
SELECT ST_AsText(ST_Scale('LINESTRING(2 1,1 1)'::geometry,2,2)); st_astext --------------------- LINESTRING(4 2,2 2) (1行)
- factorパラメーターを指定して、ジオメトリオブジェクトをスケーリングします。
SELECT ST_AsText(ST_Scale('LINESTRING(2 1,1 1)'::geometry,'POINT(2 2)'::geometry)); st_astext --------------------- LINESTRING(4 2,2 2) (1行)
- originパラメーターを指定して、ジオメトリオブジェクトをスケーリングします。
SELECT ST_Scale(g、factor) 、 ST_Scale(g,factor,'POINT(2 1)'::geometry),g から ('LINESTRING(2 1,1 1,1 2)'::geometry as g,'POINT(3)'::geometry as factor) as t;
