このトピックでは、ST_GeometryMatch関数について説明します。 この関数は、2Dジオメトリオブジェクトを3Dモデルにマッピングして3Dジオメトリオブジェクトを生成します。
構文
ジオメトリST_GeometryMatch(meshgeom geom3d、geometry geom2d、cstring方向、float8サンプル);
パラメーター
パラメーター | 説明 |
geom3d | meshgeomオブジェクト。 |
geom2d | ジオメトリオブジェクト。Point、MultiPoint、LineString、およびMultiLineString型にすることができます。 |
方向 | マッチング方向。 有効な値: TOPおよびBOTTOM。 |
サンプル | 2Dジオメトリオブジェクトのサンプリング間隔。 |
説明
- この関数は、2Dジオメトリオブジェクトを3Dメシュジオムオブジェクトのサーフェスに吸収またはマッピングします。
- 2Dジオメトリオブジェクトは、点または線であり得る。
- 以下の吸着またはマッチング方向がサポートされています: トップ吸着またはマッチングとボトム吸着またはマッチング。
効果図
2Dラインは、3Dラインを生成するためにTOP方向に沿って3Dメッシュオブジェクトにマッチングされる。 

例
SELECT ST_AsText(ST_GeometryMatch('MESHGEOM(PATCH(TRIANGLESTRIP Z(0 0 0,10 0 10 0,0 0 10))))'::mesh, 'LINESTRING(1 1 1, 1.1 1.1)', 'BOTTOM', 0.02));
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
LINESTRING Z (1 1 0,1.01414213562373 1.01414213562373 0,1.02828427124746 1.02828427124746 0,1.04242640687119 1.04242640687119 0,1.05656854249492 1.05656854249492 0,1.07071067811866 1.07071067811866 0,1.08485281374239 1.08485281374239 0,1.09899494936612 1.09899494936612 0,1.1 1.1 0)