二维几何匹配到三维模型,生成三维几何对象。

语法

geometry ST_GeometryMatch(meshgeom geom3d, geometry geom2d, cstring direction, float8 sample );

参数

参数名称描述
geom3dmeshgeom对象
geom2dgeometry对象,支持Point、MultiPoint、LineString、MultiLineString。
direction匹配的方向,可选:"TOP"、"BOTTOM"。
sample二维采样间距的长度。

描述

  • 将二维几何数据吸附或匹配到三维meshgeom表面。
  • 二维数据支持点、线两种类型。
  • 吸附/匹配方向支持顶部吸附、底部吸附两种方式。

效果示意

二维Line沿TOP方向匹配到Mesh,构成三维Line。效果图

示例

SELECT ST_AsText(ST_GeometryMatch('MESHGEOM(PATCH(TRIANGLESTRIP Z(0 0 0,10 0 0,0 10 0,0 0 10)))'::mesh, 'LINESTRING(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)