Procedural triangulation

DanB

CAD community veteran
I am not sure if "procedural triangulation" is the correct term. Anyways, looking for algorithms on how to obtain a triangulation recursively. Let's say I have N-points triangulated, then K-points are introduced. How could one extend the triangulation based on the N-points, with K new points without starting the whole triangulation over again?
 

Quaoar

Administrator
Staff member
I am not sure if "procedural triangulation" is the correct term. Anyways, looking for algorithms on how to obtain a triangulation recursively. Let's say I have N-points triangulated, then K-points are introduced. How could one extend the triangulation based on the N-points, with K new points without starting the whole triangulation over again?
Do you consider mesh refinement algorithms? It would require analysis of topological condition for a newly introduced point (is it inside a triangle, lies on an edge, or coincides with a vertex) and a sort of incremental splits. We did some sort of a similar thing a long time ago, although the idea was rather to split triangulation along a set of straight lines. And the refinement was restricted in the existing domain, i.e., mesh coverage (or mesh area) did not change as a result, which might not be the case for you.

Btw, do you think that remeshing the entire point set is going to be too inefficient? Which mesher are you using right now?
 

DanB

CAD community veteran
Mesh refinement is not the problem I'm trying to solve, rather extending already defined geometry. Maybe a better explanation would resemble more of a swept surface, where the added geometry may vary.

The core of my problem is that I am trying to generate geometry live(no real-time constraints). Right now I am using VTKs flying edges algorithm to remesh the entire point set. Also tested delaunay3d and poisson reconstruction. They are all too slow, unfortunately.
 

DanB

CAD community veteran
Do you consider mesh refinement algorithms? It would require analysis of topological condition for a newly introduced point (is it inside a triangle, lies on an edge, or coincides with a vertex) and a sort of incremental splits. We did some sort of a similar thing a long time ago, although the idea was rather to split triangulation along a set of straight lines. And the refinement was restricted in the existing domain, i.e., mesh coverage (or mesh area) did not change as a result, which might not be the case for you.

Btw, do you think that remeshing the entire point set is going to be too inefficient? Which mesher are you using right now?
Realized that I had pretty well defined a priori knowledge about the pre-triangulated mesh, so I was able to put together an algorithm that solved the problem. But I have to say: customizing meshers and shaders in VTK is neat!
 
Top