我已经提取了所有交叉点的几何形状,并且想找到所有的连接(例如,交叉点一连接到交叉点二,三,四,五)。我当时正在考虑通过检查两个Line(点)是否在同一LineString上来实现这一点。有人知道这是否是个好方法吗?是否有任何函数可调用以检查两个点是否在同一条线上?谢谢
如果两个点(或任意数量的点)在一个多点中,则可以使用ST_Contains(Linestring,Multipoint),它将返回true
当且仅当B的点不位于A的外部且B的内部的至少一个点位于A的内部时。
http://postgis.net/docs/manual-2.1/ST_Contains.html
首先,您需要将对收集为多点,如果要测试所有可能的成对集合,这将是成比例于n ^ 2的多个多点,这可能会让人望而却步。在那种情况下,我将生成一个表,将点与包含它们的每个线串匹配,然后按线串汇总该表。
另请参阅http://postgis.net/docs/manual-2.1/ST_Relate.html,以更常规地测试对象之间的空间关系。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句