Presentation is loading. Please wait.

Presentation is loading. Please wait.

Handling Degeneracies in Exact Boundary Evaluation

Similar presentations


Presentation on theme: "Handling Degeneracies in Exact Boundary Evaluation"— Presentation transcript:

1 Handling Degeneracies in Exact Boundary Evaluation
ACM Symposium on Solid Modelling and Applications SM’04 Handling Degeneracies in Exact Boundary Evaluation John Keyser Koji Ouchi Texas A&M University Goal Develop robust boundary evaluation Input: A CSG tree of solids in B-rep + a tolerance Output: A degeneracy-free solid in B-rep Robust = exact + degeneracy-free We are free to adjust the surfaces of input solids within a tolerance Maintain the designer’s intent Use exact computation in order to eliminate numerical errors No intentional degeneracy occurs Input degeneracies are removed by numerical perturbation Every surface of the output solid is parallel to some surface of the degenerate solid (or artificially added) Detecting Degeneracies Degeneracies are detected by checking irregular intersections Use exact computation of surfaces/curves and points (polynomials and algebraic numbers) The library MAPC for manipulate algebraic points and curves using Sylvester resultant and the box-hit algorithm The library ERUR for computing the rational univariate reduction of a polynomial system using the toric resultants 0: Points coincide Point 0: A point lies on a surface 1: A curve lies on a surface 0: A curve is tangent to a surface at a point 2: Surfaces overlap 1: Surfaces are tangent along a curve 0: Surfaces are tangent at a point Surface 0: A point lies on a curve 1: Curves overlap 0: Curves intersect tangentially Curve Table: Types of degeneracies The entries show degeneracies between surfaces, curves and points. The order of each degenerate intersections involved in bold: (points 0, curves 1, surfaces 2) Removing Degeneracies Degeneracies are removed by expansion / contraction of primitives Perturb the surfaces of primitives inward / outward depending on the operations applied to them The perturbation information at the root is propagated to the leaves A  B: expand both A and B A  B: contract both A and B A  B: expand A, contract B Every surface of the output solid is parallel to some surface of the degenerate solid in order to catch the designer’s intent Thus, exact computation is required But, there are some shortcomings: An example of degeneracy that cannot be removed Undesirable small faces are created Real World Example Examples from a Bradley Fighting Vehicle developed by the Army Research Lab Cargo hatch is a join of 11 solids, 4 of them have degeneracies Commander hatch is a join of 5 solids, 1 of them has a degeneracy Engine is a join of 13 solids, 3 of them have degeneracies The perturbed versions run slower than the unperturbed versions, and require more exact computation than floating-point filters For Cargo hatch, the run-time increases 38% and the ratio of exact computation increases from 6.4% to 7.4% For Commander hatch, the run-time increases 633% and the ratio of exact computation increases from 3.7% to 7.9% For Engine, the run-time increases 24% and the ratio of exact computation increases from 3.6% to 4.5% Cargo hatch Commander hatch Engine Work supported in part by NSF ITR award CCR and NSF/DARPA CARGO award DMS Bradley models provided courtesy of Army Research Lab


Download ppt "Handling Degeneracies in Exact Boundary Evaluation"

Similar presentations


Ads by Google