I am looking for suggestions on algorithms I can use to determine the boundary points/vertices of a list of vertices. I also need to determine which boundary point connects to which other boundary point.
I have my own solution but it involves alot of steps and is more procedurally based rather than mathematically based. Can you suggest any algorithms (both procedural and mathematic)?
- - Organise the vertices into a Dictionary <int, List<Triangle>> vertexTriangleMap. Where the keys are the indexes of the vertices and the values are lists of the triangles that involve that vertex
- - Pick a random vertex(RV) then pick a random triangle involving that vertex. For eg; vertexTriangleMap
- - Of the 2 other vertices in this triangle: Determine which involves the least triangles (the point w the least triangles = OV)
- - Search through OV's triangles looking for another triangle that involves the vertices OV AND RV:
- - if there is more than 1 triangle that involves these 2 points then that means that OV is NOT a boundary point else OV is a boundary point AND I know it connects to RV. OV now becomes RV and I can now repeat the process and I will determine which boundary points connect to which. I'll know when to stop when I reach the beginning again (the first RV).
Edited by gretty, 02 February 2014 - 03:40 AM.