US2024135733A1PendingUtilityA1

Fillet detection method

Assignee: DASSAULT SYSTEMESPriority: Sep 29, 2022Filed: Sep 29, 2023Published: Apr 25, 2024
Est. expirySep 29, 2042(~16.2 yrs left)· nominal 20-yr term from priority
G06V 20/64G06T 7/543G06T 2207/20076G06F 30/17G06F 2111/04G06F 30/23G06F 2119/08G06F 2119/14G06F 2113/10
58
PatentIndex Score
0
Cited by
0
References
0
Claims

Abstract

A computer-implemented method including obtaining a mesh representing a segment of an outer surface of a portion of a mechanical part. The method further including determining curves over the mesh that each follows maximal curvature directions of the mesh, fitting each curve with a respective circle, thereby obtaining a set of circles, and calculating a value of one or more statistics of the set of circles. The method then detects whether the mesh is a fillet or not as a function of the value of the one or more statistics.

Claims

exact text as granted — not AI-modified
1 . A computer-implemented method comprising:
 obtaining a mesh representing a segment of an outer surface of a portion of a mechanical part;   determining curves over the mesh that each follows maximal curvature directions of the mesh;   fitting each curve with a respective circle, thereby obtaining a set of circles;   calculating a value of one or more statistics of the set of circles; and   detecting whether the mesh is a fillet or not as a function of the value of the one or more statistics.   
     
     
         2 . The method of  claim 1 , wherein the determining of the curves includes:
 computing a distribution of maximal curvature directions over the mesh; and   starting from a plurality of seed points belonging to the mesh, tracing integral curves of the distribution of maximal curvature directions.   
     
     
         3 . The method of  claim 2 , wherein the computing of a distribution of maximal curvature directions includes:
 computing a curvature tensor field (K_S) distributed over the mesh;   decomposing the computed tensor field (K_S) into at least two sub-tensors, a first sub-tensor (κ_S{circumflex over ( )}M ω_S{circumflex over ( )}M ⊗ ω_S{circumflex over ( )}M) corresponding to a maximal curvature, and a second sub-tensor (κ S   m ω S   m  ⊗ ω S   m ) corresponding to a minimal curvature; and   computing the distribution of maximal curvature directions based on the decomposed tensor field (X S   M =(ω S   M ) # ).   
     
     
         4 . The method of  claim 3 , wherein the computing of the curvature tensor field is performed according to a normal cycles approach, a quadric fitting approach, or a circle fitting approach. 
     
     
         5 . The method of  claim 2 , wherein the mesh has faces and edges, the distribution of maximal curvature directions including, for each face, one or more respective maximal curvature directions, the tracing of each integral curve including, starting from a respective seed point, iteratively face-by-face, integrating a planar curve on each respective face based on the one or more respective maximal curvature directions, each iteration stopping once the integrating reaches an edge of the respective face. 
     
     
         6 . The method of  claim 5 , wherein the one or more maximal curvature directions of each respective face consist of a single maximal curvature direction which is constant for the face, the integrating of each planar curve on a respective face being based on said constant maximal curvature direction, the planar curve thereby being a straight line. 
     
     
         7 . The method of  claim 1 , wherein the one or more statistics include one or both of:
 a mean fitting error, the mesh being detected as a fillet if, and only if, the mean fitting error is below a first threshold, and   a radius variance, the mesh being detected as a fillet only when the radius variance is below a second threshold.   
     
     
         8 . The method of  claim 1 , wherein the fitting of each curve with a respective circle includes:
 determining a plane closest to the curve with respect to a least square distance;   projecting the curve on the plane; and   determining a circle closest to the projected curve with respect to a predetermined distance.   
     
     
         9 . The method of  claim 1 , further comprising:
 calculating an average radius of the set of circles; and   when a fillet is detected, creating a fillet CAD feature parameterized by the average radius.   
     
     
         10 . The method of  claim 1 , further comprising:
 obtaining a first mesh representing an outer surface of a mechanical part;   segmenting the first mesh into a set of second meshes; and   for one or more second meshes:
 determining curves over the second mesh that each follows maximal curvature directions of the second mesh; 
 fitting each curve with a respective circle, thereby obtaining a set of circles; 
 calculating a value of one or more statistics of the set of circles; and 
 detecting whether the second mesh is a fillet or not as a function of the value of the one or more statistics. 
   
     
     
         11 . The method of  claim 10 , further comprising, when the detecting detects that a second mesh is a fillet, identifying adjacent faces input of the fillet. 
     
     
         12 . The method of  claim 10 , wherein the obtaining of a first mesh further comprises:
 obtaining the first mesh from a scan of the mechanical part; or   obtaining the first mesh from a CAD design.   
     
     
         13 . A non-transitory computer readable storage medium having recorded thereon a computer program that when executed by a processor causes the processor to implement a method comprising:
 obtaining a mesh representing a segment of an outer surface of a portion of a mechanical part;   determining curves over the mesh that each follows maximal curvature directions of the mesh;   fitting each curve with a respective circle, thereby obtaining a set of circles;   calculating a value of one or more statistics of the set of circles; and   detecting whether the mesh is a fillet or not as a function of the value of the one or more statistics.   
     
     
         14 . A system comprising: 
       a processor coupled to a memory, the memory having recorded thereon a computer program that when executed by the processor causes the processor to be configured to:
 obtain a mesh representing a segment of an outer surface of a portion of a mechanical part; 
 determine curves over the mesh that each follows maximal curvature directions of the mesh; 
 fit each curve with a respective circle, thereby obtaining a set of circles; 
 calculate a value of one or more statistics of the set of circles; and 
 detect whether the mesh is a fillet or not as a function of the value of the one or more statistics. 
 
     
     
         15 . The method of  claim 3 , wherein the mesh has faces and edges, the distribution of maximal curvature directions including, for each face, one or more respective maximal curvature directions, the tracing of each integral curve including, starting from a respective seed point, iteratively face-by-face, integrating a planar curve on each respective face based on the one or more respective maximal curvature directions, each iteration stopping once the integrating reaches an edge of the respective face. 
     
     
         16 . The method of  claim 4 , wherein the mesh has faces and edges, the distribution of maximal curvature directions including, for each face, one or more respective maximal curvature directions, the tracing of each integral curve including, starting from a respective seed point, iteratively face-by-face, integrating a planar curve on each respective face based on the one or more respective maximal curvature directions, each iteration stopping once the integrating reaches an edge of the respective face. 
     
     
         17 . The method of  claim 11 , wherein the obtaining of a first mesh further comprises:
 obtaining the first mesh from a scan of the mechanical part; or   obtaining the first mesh from a CAD design.   
     
     
         18 . The method of  claim 2 , wherein the one or more statistics include one or both of:
 a mean fitting error, the mesh being detected as a fillet if, and only if, the mean fitting error is below a first threshold, and   a radius variance, the mesh being detected as a fillet only when the radius variance is below a second threshold.   
     
     
         19 . The method of  claim 2 , further comprising:
 calculating an average radius of the set of circles; and   when a fillet is detected, creating a fillet CAD feature parameterized by the average radius.   
     
     
         20 . The method of  claim 2 , further comprising:
 obtaining a first mesh representing an outer surface of a mechanical part;   segmenting the first mesh into a set of second meshes; and   for one or more second meshes:
 determining curves over the second mesh that each follows maximal curvature directions of the second mesh; 
 fitting each curve with a respective circle, thereby obtaining a set of circles; 
 calculating a value of one or more statistics of the set of circles; and 
 detecting whether the second mesh is a fillet or not as a function of the value of the one or more statistics.

Join the waitlist — get patent alerts

Track US2024135733A1 — get alerts on status changes and closely related new filings.

We store only your email — no account needed. See our privacy policy.