ST_3DDWithin — 测试两个 3D 几何图形是否在给定的 3D 距离内
boolean ST_3DDWithin(geometry g1, geometry g2, double precision distance_of_srid);
如果两个几何值之间的 3D 距离不大于距离 distance_of_srid,则返回 true。 距离以几何空间参考系统定义的单位指定。 为了使此函数有意义,源几何图形必须位于同一坐标系中(具有相同的 SRID)。
|
|
|
此功能自动包括利用几何上可用的任何空间索引的边界框比较。 |
该函数支持 3d 并且不会丢失 z-index。
该函数支持多面体曲面。
该方法实现了SQL/MM规范。 SQL-MM ?
可用性: 2.0.0
-- Geometry example - units in meters (SRID: 2163 US National Atlas Equal area) (3D point and line compared 2D point and line)
-- Note: currently no vertical datum support so Z is not transformed and assumed to be same units as final.
SELECT ST_3DDWithin(
ST_Transform(ST_GeomFromEWKT('SRID=4326;POINT(-72.1235 42.3521 4)'),2163),
ST_Transform(ST_GeomFromEWKT('SRID=4326;LINESTRING(-72.1260 42.45 15, -72.123 42.1546 20)'),2163),
126.8
) As within_dist_3d,
ST_DWithin(
ST_Transform(ST_GeomFromEWKT('SRID=4326;POINT(-72.1235 42.3521 4)'),2163),
ST_Transform(ST_GeomFromEWKT('SRID=4326;LINESTRING(-72.1260 42.45 15, -72.123 42.1546 20)'),2163),
126.8
) As within_dist_2d;
within_dist_3d | within_dist_2d
----------------+----------------
f | t