返回两个Geometry对象间的二维最短线段。

语法

geometry  ST_ShortestLine(geometry  g1 , geometry  g2);

参数

参数名称 描述
g1 第一个Geometry对象。
g2 第二个Geometry对象。

描述

  • 如果找到不止一条,该函数将仅返回第一条最短的Line对象。
  • 如果g1和g2仅在一个点处相交,则该函数将返回一条在该相交点处具有起点和终点的Line对象。
  • 如果g1和g2与一个以上的点相交,则该函数将返回一条以相同的点为起点和终点的Line,但是它可以是任何相交的点。
  • 返回的Line将始终以g1开始,以g2结尾。
  • 该函数返回的Line的长度将始终与g1和g2的ST_Distance返回值相同。

示例

默认调用:
SELECT ST_AsText(ST_ShortestLine('POINT(0 0)'::geometry,'LINESTRING(0 2,1 1)'::geometry));
      st_astext
---------------------
 LINESTRING(0 0,1 1)
(1 row)