🤖 AI Summary
This work addresses the efficient and high-precision computation of the Generalized Winding Number (GWN) for open, noisy, non-manifold, and parameterized surfaces. We propose a novel injective-ray + boundary-driven one-shot algorithm that uniquely relies only on intersection information between a single ray and the surface boundary curve—eliminating the need for surface discretization or voxelization and thus avoiding mesh distortion. By integrating Sum-of-Squares optimization, the boundary element method, and Laplace surface construction, our approach enables machine-precision evaluation directly on parametric surfaces. The algorithm achieves sub-millisecond real-time performance on both complex triangle meshes and parametric surfaces, significantly accelerating large-scale GWN computation. Experimental results demonstrate its effectiveness in robust voxelization and geometric Boolean operations, markedly improving both accuracy and efficiency for inside-outside classification of open and degenerate surfaces.
📝 Abstract
The generalized winding number is an essential part of the geometry processing toolkit, allowing to quantify how much a given point is inside a surface, often represented by a mesh or a point cloud, even when the surface is open, noisy, or non-manifold. Parameterized surfaces, which often contain intentional and unintentional gaps and imprecisions, would also benefit from a generalized winding number. Standard methods to compute it, however, rely on a surface integral, challenging to compute without surface discretization, leading to loss of precision characteristic of parametric surfaces. We propose an alternative method to compute a generalized winding number, based only on the surface boundary and the intersections of a single ray with the surface. For parametric surfaces, we show that all the necessary operations can be done via a Sum-of-Squares (SOS) formulation, thus computing generalized winding numbers without surface discretization with machine precision. We show that by discretizing only the boundary of the surface, this becomes an efficient method. We demonstrate an application of our method to the problem of computing a generalized winding number of a surface represented by a curve network, where each curve loop is surfaced via Laplace equation. We use the Boundary Element Method to express the solution as a parametric surface, allowing us to apply our method without meshing the surfaces. As a bonus, we also demonstrate that for meshes with many triangles and a simple boundary, our method is faster than the hierarchical evaluation of the generalized winding number while still being precise. We validate our algorithms theoretically, numerically, and by demonstrating a gallery of results
ew{on a variety of parametric surfaces and meshes}, as well uses in a variety of applications, including voxelizations and boolean operations.