1 / 1

Handling Degeneracies in Exact Boundary Evaluation

Surface. Curve. Point. Surface. 2 : Surfaces overlap 1 : Surfaces are tangent along a curve 0 : Surfaces are tangent at a point. 1 : A curve lies on a surface 0 : A curve is tangent to a surface at a point. 0 : A point lies on a surface. Curve. 1 : Curves overlap

zanthe
Download Presentation

Handling Degeneracies in Exact Boundary Evaluation

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Surface Curve Point Surface 2: Surfaces overlap 1: Surfaces are tangent along a curve 0: Surfaces are tangent at a point 1: A curve lies on a surface 0: A curve is tangent to a surface at a point 0: A point lies on a surface Curve 1: Curves overlap 0: Curves intersect tangentially 0: A point lies on a curve Point 0: Points coincide ACM Symposium on Solid Modelling and Applications SM’04 Handling Degeneracies in Exact Boundary Evaluation John Keyser Koji Ouchi Texas A&M University http://research.cs.tamu.edu/keyser/geom/ 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 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 ofprimitives • 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-0220047 and NSF/DARPA CARGO award DMS-0138446 Bradley models provided courtesy of Army Research Lab

More Related