Claims
- 1. A method for editing a geometrical model with a level set modeling surface editor operator, comprising:
performing a level set surface editing operation on a level set model, wherein said operation is defined by a level set surface editing operator.
- 2. The method of claim 1 further comprises:
converting an input model into said level set model for said step of performing a level set surface editing operation; rendering said level set model after said step of performing a level set surface editing operation.
- 3. The method of claim 2 wherein said converting step converts said input model from a geometric to a volumetric model by using scan conversion.
- 4. The method of claim 2 wherein said converting step converts said input model with by using distance calculations.
- 5. The method of claim 2 wherein said converting step converts said input model with by using Sethian's Fast Marching Method.
- 6. The method of claim 1 wherein said level set model is represented in a narrow-band distance volume.
- 7. The method of claim 1 wherein said performing a level set surface editing operator is defined as a speed function, said function comprising:
a regional constraint function component; a filter function component; a surface properties defining function component.
- 8. The method of claim 7 wherein said speed function is F(x,n,φ)=Dq(d)C(γ)G(γ), wherein
Dq(d) is said regional constraint function component, C(γ) is said filter function component, and G(γ) is said surface properties defining function component.
- 9. The method of claim 8 wherein said Dq(d) is further defined as having q be a geometric primitive such as a point, a line-segment, or surface and d be the distance from the level set surface of said level set surface model to q.
- 10. The method of claim 8 wherein said γ is a geometric property of the level set surface of said level set surface model, wherein γ is any order property of φ.
- 11. The method of claim 10 wherein γ represents distance, which is the zero-th order property of φ.
- 12. The method of claim 10 wherein γ represents normal vector to said level set surface, which is the first order property of φ.
- 13. The method of claim 10 wherein γ represents curvature of said level set surface, which is the second order property of φ.
- 14. The method of claim 8 wherein said regional constraint component defines a region-of-influence.
- 15. The method of claim 14 wherein said region-of-influence is defined by a distance calculation to a geometric primitive such as a point set, a line segment, or a surface.
- 16. The method of claim 15 wherein said region-of-influence is defined by a distance to an intersection curve point set.
- 17. The method of claim 15 wherein said region-of-influence is a super-ellipsoid.
- 18. The method of claim 8 wherein said filter function component is a filter of local geometric surface properties, wherein user can control the behavior of said level set surface editing operator based on a function of a local geometric surface property.
- 19. The method of claim 8 wherein said surface properties defining function component defines the behavior of said level set surface editing operator.
- 20. The method of claim 1 wherein said level surface editing operator is a CSG intersection operator.
- 21. The method of claim 1 wherein said level surface editing operator is a CSG difference operator.
- 22. The method of claim 1 wherein said level surface editing operator is a CSG union operator.
- 23. The method of claim 7 wherein said level surface editing operator is a blending operator, wherein blending is constrained by a region-of-influence.
- 24. The method of claim 23 wherein said region-of-influence is based on the distance to an intersection curve shared by both input surfaces.
- 25. The method of claim 23 wherein said intersection curve is represented by a point set.
- 26. The method of claim 23 wherein said blending operator is defined by the function Fblend(x, n, φ)=αDq(d)C(K)K, wherein
α is a user-defined positive scalar that controls the rate of the level set calculation; Dq(d) is said region-of-influence component with d being the shortest distance from the level set surface to said intersection curve point set; K is a curvature term; and C(K) is a filtering function that defines the geometric properties of said blending operator.
- 27. The method of claim 23 wherein said blending operator calculates a closest point in a set by using the approximate nearest neighbor search algorithm of Mount and Arya.
- 28. The method of claim 27 wherein said blending operator calculates a closest point in a set by storing a point set in a K-D tree, wherein points in said point set is are uniform distributed.
- 29. The method of claim 27 wherein said blending operator calculates a closest point in a set by storing a point set in the balanced box decomposition (BBD) tree, wherein points in said point set is are clustered.
- 30. The method of claim 7 wherein said level surface editing operator is a smoothing operator, wherein a surface is smoothed by applying motions in a direction that reduces local curvature.
- 31. The method of claim 30 wherein said smoothing operator is constrained to move outward relative to said surface to smooth said surface by adding material to said surface.
- 32. The method of claim 30 wherein said smoothing operator is constrained to move inward relative to said surface to smooth said surface by removing material to said surface.
- 33. The method of claim 30 wherein said smoothing operator is converted into a sharpening operator by changing the sign of a scalar term and using said filter function to truncate said speed-function to zero for high values of the curvature.
- 34. The method of claim 30 wherein said smoothing operator is defined by the function Fsmooth(x, n, φ)=αDs(d)C(K)K, wherein
α is a user-defined positive scalar that controls the rate of the level set calculation; Ds (d) ensures that said function smoothly goes to zero near the boundary of the region-of-influence; K is a curvature term; and C(K) is a filtering function that defines the geometric properties of said smoothing operator.
- 35. The method of claim 34 wherein said region-of-influence of said Ds(d) is defined said by a distance calculation to a geometric primitive such as a point set, a line segment, or a surface.
- 36. The method of claim 35 wherein said smoothing operator calculates a closest point in a set by using the approximate nearest neighbor search algorithm of Mount and Arya.
- 37. The method of claim 36 wherein said smoothing operator calculates a closest point in a set by storing a point set in a K-D tree, wherein points in said point set is are uniform distributed.
- 38. The method of claim 36 wherein said smoothing operator calculates a closest point in a set by storing a point set in the balanced box decomposition (BBD) tree, wherein points in said point set is are clustered.
- 39. The method of claim 35 wherein said region-of-influence is a super-ellipsoid.
- 40. The method of claim 7 wherein said level surface editing operator is a point set attraction/repulsion operator.
- 41. The method of claim 40 wherein said point set attraction/repulsion operator calculates a closest point in a set by using the approximate nearest neighbor search algorithm of Mount and Arya
- 42. The method of claim 41 wherein said point set attraction/repulsion operator calculates a closest point in a set by storing a point set in a K-D tree, wherein points in said point set is are uniform distributed.
- 43. The method of claim 41 wherein said point set attraction/repulsion operator calculates a closest point in a set by storing a point set in the balanced box decomposition (BBD) tree, wherein points in said point set is are clustered.
- 44. The method of claim 40 wherein said point set attraction/repulsion operator is used to emboss a surface.
- 45. The method of claim 1 wherein said level surface editing operator is a morphological editing operator.
- 46. The method of claim 2 wherein said rendering uses a volume rendering.
- 47. The method of claim 2 wherein said rendering uses Incremental Matching Cubes mesh extraction, which optimizes the mesh extraction by limiting the region which needs to be processed.
- 48. The method of claim 2 wherein said input model is a polygon mesh.
- 49. The method of claim 48 wherein said polygon mesh is scan converted into a level set model by computing a distance volume, wherein said computing calculates the closest point on and shortest singed distance to said mesh by solving the Eikonal equation |∇φ|=1.
- 50. The method of claim 49 wherein said computing a distance volume uses the CPT (closest point) algorithm of Mauch.
- 51. The method of claim 2 wherein said input model is a Constructive Solid Geometry (CSG) model.
- 52. The method of claim 2 wherein said input model is an implicit model.
- 53. The method of claim 2 wherein said input model is a scanned volume.
- 54. The method of claim 8 further comprises:
resetting the volumetric representation of said level model after said step of performing a level set surface editing operation to ensure that φ is approximately equal to the shortest distance to the zero level set in the narrow band.
- 55. The method of claim 7 wherein level set computations associated with solving said speed function are regionally constrained to a sub-volume defined by the bounding-box of a region-of-influence primitive.
Parent Case Info
[0001] This application claims the benefit of U.S. Provisional Patent Application No. 60/448,291, filed on Feb. 19, 2003, and U.S. Provisional Patent Application No. 60/499,176, filed on Aug. 28, 2003, the disclosure of which is hereby incorporated by reference.
[0002] Portions of the disclosure of this patent document contain material that is subject to copyright protection. The copyright owner has no objection to the facsimile reproduction by anyone of the patent document or the patent disclosure as it appears in the Patent and Trademark Office file or records, but otherwise reserves all copyright rights whatsoever.
Provisional Applications (2)
|
Number |
Date |
Country |
|
60448291 |
Feb 2003 |
US |
|
60499176 |
Aug 2003 |
US |