レイヤー内の線分を分割するノードを選択したい。ノードが 2 本の線と交差する場所でのみ選択したいのですが、2 本以上の線 (T 字路の交差点や 4 方向の交差点など) と交わるノードは選択したくありません。
これが私が提供できる最高の写真です(写真を投稿するという評判はありません)。左側の --- 行は最初のセグメントで、右側の --x--x--x 行は 2 番目のセグメントです。O は、選択したい真ん中のノードです。
--------------------------------------0--x---x--x- --x---x---x--x--x--x--x--x--x--x
2 本以上の線がノードに接しているノードを選択したくありません。
これまでのところ、このクエリを試しました
CREATE TABLE contacts_st_touching_faults as
SELECT ST_Intersection(a.the_geom, b.the_geom), Count(Distinct a.gid) = 2
FROM final_layer as a, final_layer as b
WHERE ST_Touches(a.the_geom, b.the_geom)
AND a.gid != b.gid
GROUP BY ST_Intersection(a.the_geom, b.the_geom)
このクエリを実行すると、2 本以上の線が交差する交差点 (T 交差点と 4 方向交差点) が表示されます。
また、ST_intersects を subing してみましたが、ST_touches ほどうまく機能していないように見えましたが、それらを機能させる方法やその他の方法を知っていれば、大歓迎です!
助けてくれてありがとう!