{"title":"计算广义绕组数的一次性方法","authors":"Cedric Martens, Mikhail Bessmeltsev","doi":"arxiv-2408.04466","DOIUrl":null,"url":null,"abstract":"The generalized winding number is an essential part of the geometry\nprocessing toolkit, allowing to quantify how much a given point is inside a\nsurface, often represented by a mesh or a point cloud, even when the surface is\nopen, noisy, or non-manifold. Parameterized surfaces, which often contain\nintentional and unintentional gaps and imprecisions, would also benefit from a\ngeneralized winding number. Standard methods to compute it, however, rely on a\nsurface integral, challenging to compute without surface discretization,\nleading to loss of precision characteristic of parametric surfaces. We propose an alternative method to compute a generalized winding number,\nbased only on the surface boundary and the intersections of a single ray with\nthe surface. For parametric surfaces, we show that all the necessary operations\ncan be done via a Sum-of-Squares (SOS) formulation, thus computing generalized\nwinding numbers without surface discretization with machine precision. We show\nthat by discretizing only the boundary of the surface, this becomes an\nefficient method. We demonstrate an application of our method to the problem of computing a\ngeneralized winding number of a surface represented by a curve network, where\neach curve loop is surfaced via Laplace equation. We use the Boundary Element\nMethod to express the solution as a parametric surface, allowing us to apply\nour method without meshing the surfaces. As a bonus, we also demonstrate that\nfor meshes with many triangles and a simple boundary, our method is faster than\nthe hierarchical evaluation of the generalized winding number while still being\nprecise. We validate our algorithms theoretically, numerically, and by demonstrating a\ngallery of results \\new{on a variety of parametric surfaces and meshes}, as\nwell uses in a variety of applications, including voxelizations and boolean\noperations.","PeriodicalId":501174,"journal":{"name":"arXiv - CS - Graphics","volume":"14 1","pages":""},"PeriodicalIF":0.0000,"publicationDate":"2024-08-08","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"0","resultStr":"{\"title\":\"One-Shot Method for Computing Generalized Winding Numbers\",\"authors\":\"Cedric Martens, Mikhail Bessmeltsev\",\"doi\":\"arxiv-2408.04466\",\"DOIUrl\":null,\"url\":null,\"abstract\":\"The generalized winding number is an essential part of the geometry\\nprocessing toolkit, allowing to quantify how much a given point is inside a\\nsurface, often represented by a mesh or a point cloud, even when the surface is\\nopen, noisy, or non-manifold. Parameterized surfaces, which often contain\\nintentional and unintentional gaps and imprecisions, would also benefit from a\\ngeneralized winding number. Standard methods to compute it, however, rely on a\\nsurface integral, challenging to compute without surface discretization,\\nleading to loss of precision characteristic of parametric surfaces. We propose an alternative method to compute a generalized winding number,\\nbased only on the surface boundary and the intersections of a single ray with\\nthe surface. For parametric surfaces, we show that all the necessary operations\\ncan be done via a Sum-of-Squares (SOS) formulation, thus computing generalized\\nwinding numbers without surface discretization with machine precision. We show\\nthat by discretizing only the boundary of the surface, this becomes an\\nefficient method. We demonstrate an application of our method to the problem of computing a\\ngeneralized winding number of a surface represented by a curve network, where\\neach curve loop is surfaced via Laplace equation. We use the Boundary Element\\nMethod to express the solution as a parametric surface, allowing us to apply\\nour method without meshing the surfaces. As a bonus, we also demonstrate that\\nfor meshes with many triangles and a simple boundary, our method is faster than\\nthe hierarchical evaluation of the generalized winding number while still being\\nprecise. We validate our algorithms theoretically, numerically, and by demonstrating a\\ngallery of results \\\\new{on a variety of parametric surfaces and meshes}, as\\nwell uses in a variety of applications, including voxelizations and boolean\\noperations.\",\"PeriodicalId\":501174,\"journal\":{\"name\":\"arXiv - CS - Graphics\",\"volume\":\"14 1\",\"pages\":\"\"},\"PeriodicalIF\":0.0000,\"publicationDate\":\"2024-08-08\",\"publicationTypes\":\"Journal Article\",\"fieldsOfStudy\":null,\"isOpenAccess\":false,\"openAccessPdf\":\"\",\"citationCount\":\"0\",\"resultStr\":null,\"platform\":\"Semanticscholar\",\"paperid\":null,\"PeriodicalName\":\"arXiv - CS - Graphics\",\"FirstCategoryId\":\"1085\",\"ListUrlMain\":\"https://doi.org/arxiv-2408.04466\",\"RegionNum\":0,\"RegionCategory\":null,\"ArticlePicture\":[],\"TitleCN\":null,\"AbstractTextCN\":null,\"PMCID\":null,\"EPubDate\":\"\",\"PubModel\":\"\",\"JCR\":\"\",\"JCRName\":\"\",\"Score\":null,\"Total\":0}","platform":"Semanticscholar","paperid":null,"PeriodicalName":"arXiv - CS - Graphics","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/arxiv-2408.04466","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
One-Shot Method for Computing Generalized Winding Numbers
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 \new{on a variety of parametric surfaces and meshes}, as
well uses in a variety of applications, including voxelizations and boolean
operations.