如何计算PostgreSQL中街道的宽度和长度?

时间:2016-03-16 14:17:41

标签: postgresql postgis

我已经意识到这个问题,更具体地说,应该是针对GIS StackExchange的。我已经问了here这个问题,但遗憾的是,没有得到答案或任何建议。我使用ST_ClosestPoint()使用这种方法将点投影到最近的线(线上插值点)。

Select  ST_ClosestPoint(line, pt) As closest_pt_line
From
      (Select ad.geom As pt,
              st.geom As line,
              ST_Distance(ad.geom, st.geom) As d
       From ad, st
       Where ST_DWithin(st.geom, ad.geom, 10.0)
       Order By d
      ) As foo;

根据这个预测点,我需要通过使用建筑多边形层来计算街道的两个方向和宽度的长度。该场景可以这样显示:

Visualization of the scenario

我知道ST_Length函数,但它返回整个线串的长度而不是长度1和长度2.任何建议计算街道和宽度的长度都会受到高度赞赏吗?

0 个答案:

没有答案