Patent ID: 8854367

Claim:
A computer-implemented process, in a computer-aided geometric design system, for computing a resulting closed triangulated polyhedral surface from a first and a second modeled objects, the first modeled object being modeled by a first closed triangulated polyhedral surface and the second modeled object being modeled by a second closed triangulated polyhedral surface, the process comprising: in a digital processor: computing intersections between triangles of the first modeled object and triangles of the second modeled object; splitting triangles of the first and second modeled objects into polygonal facets, the polygonal facets being adjacent to said intersections; computing at least one region, wherein a region comprises at least one of a set of triangles or a set of polygonal facets that are adjacent to each other and that are delimited by one of the computed intersections; determining at least one of all triangles or all polygonal facets of said region, the triangles or polygonal facets being adjacent to a common computed intersection, wherein each triangle or polygonal facet comprises a normal vector defined according to the geometry and the orientation of each triangle or polygonal facet; computing two couples of winding numbers p and q for a given triangle or a given polygonal facet of a region, wherein the first winding number of each couple of winding numbers is computed from the first closed triangulated polyhedral surface and the second winding number of each couple of winding numbers is computed from the second closed triangulated polyhedral surface; computing a coefficient k for each triangle and each polygonal facet, the coefficient being computed with a function φ having as inputs the two couples of winding numbers p and q of each triangle and each polygonal facet, by: (i) starting from the given triangle or the given polygonal facet, performing a rotation according to a radial order around the computed intersection for crossing at least one of the other triangles or the polygonal facets adjacent the computed intersection; (ii) detecting the crossing of at least one of the other triangles or polygonal facets adjacent the computed intersection; (iii) after each crossing, updating the couples of winding numbers p and q according to the orientation of the normal vector of at least one of the crossed triangle or polygonal facet; selecting triangles and polygonal facets according to the computed coefficients; triangulating said selected polygonal facets; obtaining the resulting closed triangulated polyhedral surface with the selected triangles and the triangulated selected polygonal facets; and outputting the resulting closed triangulated polyhedral surface in the computer-aided geometric design system such that the computer-aided geometric design system renders the resulting closed triangulated polyhedral surface in a display of a modeled object.