计算两个模型之间的三维距离。

语法

float8 ST_3DDistance(meshgeom geom, meshgeom geom);
float8 ST_3DDistance(sfmesh sfmeshObject, sfmesh sfmeshObject);
float8 ST_3DDistance(meshgeom geom, geometry geometry);
float8 ST_3DDistance(sfmesh sfmeshObject, geometry geometry);

参数

参数名称描述
geommeshgeom对象
sfmeshObjectsfmesh对象。
geometrygeometry对象。

描述

  • 计算两个三维模型之间的空间最短距离。
  • 计算三维模型与三维几何的空间最短距离。
  • 如果geom参数非法,则返回值为NULL。

示例

select ST_3DDistance('MESHGEOM(PATCH(TRIANGLE Z(0 0 0,0 10 0,0 0 10)))'::meshgeom, 'MESHGEOM(PATCH(TRIANGLE Z(1 0 0,1 1 0,1 0 1)))'::meshgeom);

---------------
             1

select ST_3DDistanc(
    'MESHGEOM(PATCH(INDEXSURFACE  Z(VERTEX(0 0 0,0 10 0,0 0 10,10 0  0), INDEX((0,1,2),(1,0,3),(3,0,2),(2,1,3)))))'::meshgeom,
    'POINT(-1 0 0)'::geometry);

---------------
             1