ST_RayIntersection

批量计算sfmesh与射线的交点。

语法

geometry ST_RayIntersection(sfmesh  sfmesh, geometry mpoint, geometry direction);

返回值

返回MULTIPOINT对象,代表每条射线与sfmesh的交点,如果无交点则用EMPTY表示。

参数

参数名称

描述

sfmesh

三维模型对象。

mpoint

批量射线的端点。

direction

射线的方向。

描述

  • 批量计算一组相同方向射线与sfmesh的交点。

  • mpoint为每条射线的端点,MULTIPOINT类型。

  • direction为所有射线的方向,POINT类型。

示例

SELECT ST_AsText(ST_RayIntersection('POLYGON((-1 -1 0, 1 -1 0, 1 1 0, -1 1 0, -1 -1 0))'::geometry::meshgeom,
                                    'MULTIPOINT(0 0 0, 0 1 0, 0 -1 0, 0 -2 0)'::geometry,
                                    'POINT(0 1 0)'::geometry));
-----------------------------------------------------
 MULTIPOINT Z ((0 0 0),(0 1 0),(0 -1 0),(0 -1 0))