polygonization of multi-component non-manifold implicit surfaces through a symbolic-numerical continuation algorithm
In computer graphics, most algorithms for sampling implicit surfaces use a 2-points numerical method. If the surface-describing function evaluates positive at the first point and negative at the second one, we can say that the surface is located somewhere between them. Surfaces detected this way are called sign-variant implicit surfaces. However, 2-points numerical methods may fail to detect and sample the surface because the functions of many implicit surfaces evaluate either positive or negative everywhere around them. These surfaces are here called sign-invariant implicit surfaces. In this paper, instead of using a 2-points numerical method, we use a 1-point numerical method to guarantee that our algorithm detects and samples both sign-variant and sign-invariant surface components or branches correctly. This algorithm follows a continuation approach to tessellate implicit surfaces, so that it applies symbolic factorization to decompose the function expression into symbolic components, sampling then each symbolic function component separately. This ensures that our algorithm detects, samples, and triangulates most components of implicit surfaces.
polygonization implicit surfaces numerical methods symbolic factorization