Checking if an edge in a graph intersects other edges

7 views (last 30 days)
I have a 2D undirected network created using graph function in matlab (using the coordinates of the nodes). I want to add some edges to the network and check if these intersects other edges of the network. One way to do this is using the coordinates of the nodes forming the edges, checking for a point of intersection with each edge. But I think this would be compuatationally intensive for large networks. Is there a simpler way?

Answers (1)

Sameer
Sameer on 5 Dec 2024
Checking for edge intersections in a large 2D undirected network can indeed be computationally intensive, especially if you do it naively by comparing each new edge against all existing edges
Use spatial data structures like a "quadtree" or "R-tree" to divide the space into hierarchical sections. This allows you to quickly eliminate large sections of the network that cannot possibly contain intersecting edges.

Categories

Find more on Graph and Network Algorithms in Help Center and File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!