Options |
|
|
Technical Article |
Options may be set to modify the behavior of ACIS. An option's value may be a flag (indicating an on/off state), a number (integer or real number), or a string. Options may be set in a Scheme application (such as Scheme AIDE) using the Scheme extension option:set; or in a C++ application using one of several API functions. |
Type | Values | Default |
---|---|---|
boolean | #f, #t | #t |
Type | Values | Default |
---|---|---|
logical | FALSE, TRUE | TRUE |
Description
This option controls the handling of discontinuous edges during stitching
of unstitched solids for those special cases where the edge curves contain
discontinuities. If this option is off, discontinuities are left in.
If this option is on, the edges are either split or smoothed, depending on the magnitude of the discontinuity. For any curve discontinuity detected, the angle of discontinuity A is computed. If angle A is less than the tolerance, then the edge is smoothed; else it is split at the discontinuity.
The tolerance is not exposed to the application, and is set internally (0.01 radians). During smoothing, the Healing Component reduces the knot multiplicity at the point of discontinuity.
Note: Turning this option on may increase healing time. Therefore, it should only be turned on if the body is known to contain discontinuous edges.
; bhl_smooth_edges ; Disable smooth edges (option:set "bhl_smooth_edges" #f) ;; #t |
[Top]
Type | Values | Default |
---|---|---|
boolean | #f, #t | #t |
Type | Values | Default |
---|---|---|
logical | FALSE, TRUE | TRUE |
Description
This option controls the optional repair of discontinuous B-spline surfaces
during preprocess phase of healing. The main aim of this utility is to
facilitate better operations on the B-spline surfaces by smoothing off
the small discontinuities that often create problems in several surface
operations.
The surface smoothing routine uses knot reduction techniques to remove discontinuities. This routine only removes small discontinuities (those in which the angle of discontinuity 'a' is less than a preset tolerance of 0.1 radians). Also using knot insertions appropriately, the routine guarantees that the new smooth surface does not deviate from the old discontinuous surface by more than a preset tolerance of 0.01 units.
; bhl_smooth_surfaces ; Disable repairing of discontinuous B-spline ; surfaces (option:set "bhl_smooth_surfaces" #f) ;; #t |
[Top]
Type | Values | Default |
---|---|---|
boolean | #f, #t | #f |
Type | Values | Default |
---|---|---|
logical | FALSE, TRUE | FALSE |
Description
If this option is on (TRUE), tolerant edges will be produced. All bad edges
are converted into tolerant edges after the stitching phase of healing.
If it is off (FALSE), no tolerant edges are produced after this phase.
; hh_do_stitch_tolerant_edges ; Enable tolerant edges and do stitching (part:load "heal1.sat") ;; (#[entity 2 1] #[entity 3 1] #[entity 4 1] ;; #[entity 5 1]) (define part1 (hh:combine (part:entities))) ;; 4 faces included in the body from 5 entities ;; supplied ;; part1 ; Zoom to see the entity (zoom-all) ;; #[view 19532598] (hh:preprocess part1) ;; #[entity 6 1] (hh:simplify part1) ;; SIMPLIFICATION RESULTS : ;; ======================== ;; Simplification Tolerance = 0.0001 ;; no. of initial splines = 4 ;; no. of final splines = 4 ;; no. of planes made = 0 ;; no. of cylinders made = 0 ;; no. of spheres made = 0 ;; no. of tori made = 0 ;; no. of cones made = 0 ;; #[entity 6 1] (option:set "hh_do_stitch_tolerant_edges" #t) ;; #f (hh:stitch part1) ;; STITCH RESULTS : ;; ================ ;; min_tol = 1e-005 ;; max_tol = 1 ;; no. solid lumps made = 0 ;; no. sheet lumps made = 1 ;; no. free faces remaining = 0 ;; no. unshared loops = 1 ;; no. unshared edges = 9 ;; #[entity 6 1] (part:save "my_new_part.sat") ;; #t |
[Top]
Type | Values | Default |
---|---|---|
boolean | #f, #t | #f |
Type | Values | Default |
---|---|---|
logical | FALSE, TRUE | FALSE |
Description
If this option is off (FALSE) the geometry building phase of healing proceeds
normally. If it is on (TRUE), the generic spline solver (which replaces
spline surfaces with non-isoparametric boundaries with net surfaces) is
not called by geometry building.
; hh_skip_gen_spline_solver ; skip gen_spline step (part:load "heal1.sat") ;; (#[entity 2 1] #[entity 3 1] #[entity 4 1] #[entity 5 1]) (define part1 (hh:combine (part:entities))) ;; part1 ; turn off generic spline solver (option:set "hh_skip_gen_spline_solver" #t) ;; #f ; autoheal without using generic spline solver (hh:autoheal part1) ;; Pre-processing body before healing ... ;; Entering the "ANALYZE" phase of SIMPLIFY ... ;; Entering the "FIX" phase of SIMPLIFY ... ;; SIMPLIFICATION RESULTS : ;; ======================== ;; Simplification Tolerance = 0.0001 ;; no. of initial splines = 4 ;; no. of final splines = 4 ;; no. of planes made = 0 ;; no. of cylinders made = 0 ;; no. of spheres made = 0 ;; no. of tori made = 0 ;; no. of cones made = 0 ;; Entering the "ANALYZE" phase of STITCH ... ;; Entering the "CALCULATE" phase of STITCH ... ;; Entering the "FIX" phase of STITCH ... ;; STITCH RESULTS : ;; ================ ;; min_tol = 1e-005 ;; max_tol = 1 ;; no. solid lumps made = 0 ;; no. sheet lumps made = 1 ;; no. free faces remaining = 0 ;; no. unshared loops = 1 ;; no. unshared edges = 9 ;; Entering the "ANALYZE" phase of GEOMBUILD ... ;; Entering the "ANALYZE" phase of ANALYTIC ... ;; Entering the "CALCULATE" phase of ANALYTIC ... ;; Entering the "ANALYZE" phase of ISOSPLINE ... ;; Entering the "CALCULATE" phase of ISOSPLINE ... ;; Entering the "ANALYZE" phase of SHARP_EDGE ... ;; Entering the "CALCULATE" phase of SHARP_EDGE ... ;; Entering the "ANALYZE" phase of WRAPUP ... ;; Entering the "CALCULATE" phase of WRAPUP ... ;; Entering the "FIX" phase of GEOMBUILD ... ;; GEOMBUILD ANALYSIS : ;; ==================== ;; geom build tol = 10 ;; analytic solver tol = 0 ;; no. of edges = 13 ;; no. of bad edges = 7 ;; no. of coedges = 17 ;; no. of bad coedges = 11 ;; no. of vertices = 10 ;; no. of bad vertices = 2 ;; no. of bad tangent edges = 4 ;; no. of bad tangent edges analytic = 0 ;; no. of G1 bad tangent edges analytic = 0 ;; no. of bad tangent edges uv_uv = 2 ;; no. of bad tangent edges boundary uv_uv = 2 ;; no. of bad tangent edges uv_nonuv = 2 ;; no. of bad tangent edges nonuv_nonuv = 0 ;; no. of bad tangent edges 3_4_sided = 3 ;; no. of surfaces = 4 ;; no. of discontinuous surfaces = 0 ;; percentage of good geom = 72 ;; GEOMBUILD CALCULATION RESULTS : ;; =============================== ;; Analytic Solver : ;; 0 degree of snapper graph ;; 0 analytic tangent junctions resolved ;; 0 analytic tangent junctions unresolved ;; 0 analytic intersections resolved ;; 0 analytic intersections unresolved ;; 0 vertices resolved (0 intersected, 0 projected) ;; 0 unstable vertices corrected ;; 0 vertices unresolved ;; 0 edges calculated by exact projections ;; 0 edges calculated by approx projections ;; 0 coincident snaps resolved ;; Isospline Solver : ;; 1 isospline tangent junctions resolved ;; 1 isospline tangent junctions unresolved ;; 4 splines bent to vertices ;; Reblending : ;; 0 faces classified as blends ;; Sharp Edge Solver : ;; 3 sharp edges resolved ;; 0 intersected ;; 0 exact projections ;; 3 approx projections ;; 0 sharp edges unresolved ;; 1 vertices resolved ;; 0 intersected ;; 1 exact projections ;; 0 approx projections ;; 0 vertices unresolved ;; Wrapup Module : ;; 17 pcurves computed ;; 1 edges trimmed ;; GEOMBUILD FIX RESULTS : ;; ======================= ;; Statistics of the healed body after geombuild fix : ;; no. of edges = 13 ;; no. of bad edges = 3 ;; no. of coedges = 17 ;; no. of bad coedges = 4 ;; no. of vertices = 10 ;; no. of bad vertices = 1 ;; no. of bad tangent edges = 3 ;; no. of bad tangent edges analytic = 0 ;; no. of G1 bad tangent edges analytic = 0 ;; no. of bad tangent edges uv_uv = 1 ;; no. of bad tangent edges boundary uv_uv = 1 ;; no. of bad tangent edges uv_nonuv = 2 ;; no. of bad tangent edges nonuv_nonuv = 0 ;; no. of bad tangent edges 3_4_sided = 3 ;; no. of surfaces = 4 ;; no. of discontinuous surfaces = 0 ;; percentage of good geom = 80 ;; Post-processing body after healing ... ;; Summary: input percent = 72, output percent = 80 ;; (#[entity 5 1] 72 80) ; make tolerant to handle gaps associated with non-isoparamtric spline boundaries (hh:make-tolerant part1) ;; #[entity 5 1] (hh:terminate-body-for-healing part1) ;; #[entity 5 1] (entity:check part1) ; checked: ; 1 lumps ; 1 shells ; 0 wires ; 4 faces ; 4 loops ; 17 coedges ; 13 edges ; 10 vertices ;; () |
[Top]
© 1989-2007 Spatial Corp., a Dassault Systèmes company. All rights reserved.