ST_ShortestLine — 返回两个几何之间的2D最短线
geometry
ST_ShortestLine
(
geometry
geom1
, geometry
geom2
)
;
返回两个几何图形之间的二维最短直线。返回的行开始于
geom1
并以
geom2
。如果
geom1
和
geom2
相交结果是一条起点和终点在交点处的直线。这条线的长度与
ST_Distance
G1和G2的退货。
可用性:1.5.0
点和线串之间的最短直线
SELECT ST_AsText( ST_ShortestLine(
'POINT (160 40)',
'LINESTRING (10 30, 50 50, 30 110, 70 90, 180 140, 130 190)')
) As sline;
---------------------------------------------------------
LINESTRING(160 40,125.75342465753425 115.34246575342466)
多边形之间的最短直线
SELECT ST_AsText( ST_ShortestLine(
'POLYGON ((190 150, 20 10, 160 70, 190 150))',
ST_Buffer('POINT(80 160)', 30)
) ) AS llinewkt;
-----------------
LINESTRING(131.59149149528952 101.89887534906197,101.21320343559644 138.78679656440357)