Scheme Extensions |
|
|
Technical Article |
body | body |
acis-opts | acis-options |
Description
This extension checks the input body for errors. The tests include all the tests
performed by the individual analyze Scheme extensions for the various specific types of
entities (for example, hh:analyze-coedge).
The results are attached to any bad entities as attributes.
; hh:analyze-body ; Load a file containing a bad part (define load (part:load "heal1.sat")) ;; load ; (#[entity 2 1] #[entity 3 1] #[entity 4 1] ; #[entity 5 1]) ; Zoom the view in order to see the part (zoom-all) ;; #[view 1076700200] ; Combine the faces into a body (define body1 (hh:combine (list (entity 2) (entity 3) (entity 4) (entity 5)))) ;; body1 ; Prepare the body for healing (define init (hh:init-body-for-healing body1)) ;; init (hh:analyze-body body1) ; GEOMBUILD CHECK RESULTS : ; Statistics of the body from geombuild check : ; no. of edges = 17 ; no. of bad edges = 4 ; no. of coedges = 17 ; no. of bad coedges = 4 ; no. of vertices = 17 ; no. of bad vertices = 0 ; no. of bad tangent edges = 0 ; no. of bad tangent edges analytic = 0 ; no. of G1 bad tangent edges analytic = 0 ; no. of bad tangent edges uv_uv = 0 ; no. of bad tangent edges boundary uv_uv = 0 ; no. of bad tangent edges uv_nonuv = 0 ; no. of bad tangent edges nonuv_nonuv = 0 ; no. of bad tangent edges 3_4_sided = 0 ; no. of surfaces = 4 ; no. of discontinuous surfaces = 0 ; percentage of good geom = 92 ;() ;; 92 |
[Top]
body | body |
acis-opts | acis-options |
; hh:analyze-coedge ; Load a file containing a bad part (define load (part:load "heal1.sat")) ;; load ; (#[entity 2 1] #[entity 3 1] #[entity 4 1] ; #[entity 5 1]) ; Zoom the view in order to see the part (zoom-all) ;; #[view 1076700200] ; Combine the faces into a body (define body1 (hh:combine (list (entity 2) (entity 3) (entity 4) (entity 5)))) ;; body1 ; Prepare the body for healing (define heal (hh:init-body-for-healing body1)) ;; heal (hh:analyze-coedge body1) ;; () |
[Top]
body | body |
acis-opts | acis-options |
; hh:analyze-edge ; Load a file containing a bad part (define load (part:load "heal1.sat")) ;; load ; Zoom the view in order to see the part (zoom-all) ;; #[view 1076700200] ; Combine the faces into a body (define body1 (hh:combine (list (entity 2) (entity 3) (entity 4) (entity 5)))) ;; body1 ; Prepare the body for healing. (define heal (hh:init-body-for-healing body1)) ;; heal (hh:analyze-edge body1) ;; () |
[Top]
body | body |
acis-opts | acis-options |
; hh:analyze-face ; Load a file containing a bad part (part:load "heal1.sat") ;; (#[entity 2 1] #[entity 3 1] #[entity 4 1] ;; #[entity 5 1]) ; Zoom the view in order to see the part (zoom-all) ;; #[view 1076700200] ; Combine the faces into a body (define body1 (hh:combine (list (entity 2) (entity 3) (entity 4) (entity 5)))) ;; body1 ; Prepare the body for healing (hh:init-body-for-healing body1) ;; #[entity 6 1] (hh:analyze-face body1) ;; () |
[Top]
body | body |
acis-opts | acis-options |
Description
This extension performs the analyze stage of the geometry building phase. The geometry
building phase performs all the geometry related healing operations, including fixing of
edge geometries by intersections, snapping surfaces for fixing tangencies, and refitting
spline surfaces.
A check is run on the body and the inaccurate geometries are marked with attributes. An invalid edge is one in which the edge curve does not lie on the underlying surfaces to ACIS tolerance. A vertex is marked bad if it does not lie on the edges or faces which are incident on it. A bad coedge is one whose pcurve and edge curve do not match.
; hh:analyze-geom ; Load a file containing a bad part (part:load "heal1.sat") ;; (#[entity 2 1] #[entity 3 1] #[entity 4 1] ;; #[entity 5 1]) ; Zoom the view in order to see the part (zoom-all) ;; #[view 1076700200] ; Combine the faces into a body (define body1 (hh:combine (list (entity 2) (entity 3) (entity 4) (entity 5)))) ;; body1 ; Prepare the body for healing (hh:preprocess body1) ;; #[entity 6 1] (hh:analyze-geom body1) ; GEOMBUILD ANALYSIS : ; ==================== ; geom build tol = 0.01 ; analytic solver tol = 0.01 ; isospline solver tol = 0.01 ; no. of edges = 17 ; no. of bad edges = 4 ; no. of coedges = 17 ; no. of bad coedges = 4 ; no. of vertices = 17 ; no. of bad vertices = 0 ; no. of bad tangent edges = 0 ; no. of bad tangent edges analytic = 0 ; no. of bad tangent edges uv_uv = 0 ; no. of bad tangent edges boundary uv_uv = 0 ; no. of bad tangent edges uv_nonuv = 0 ; no. of bad tangent edges nonuv_nonuv = 0 ; no. of bad tangent edges 3_4_sided = 0 ; no. of surfaces = 4 ; no. of discontinuous surfaces = 0 ; percentage of good geom = 92 ;; () |
[Top]
body | body |
acis-opts | acis-options |
; hh:analyze-loop ; Load a file containing a bad part (part:load "heal1.sat") ;; (#[entity 2 1] #[entity 3 1] #[entity 4 1] ;; #[entity 5 1]) ; Zoom the view in order to see the part (zoom-all) ;; #[view 1076700200] ; Combine the faces into a body (define body1 (hh:combine (list (entity 2) (entity 3) (entity 4) (entity 5)))) ;; body1 ; Prepare the body for healing (hh:init-body-for-healing body1) ;; #[entity 6 1] (hh:analyze-loop body1) ;; () |
[Top]
body | body |
acis-opts | acis-options |
; hh:analyze-lump ; Load a file containing a bad part (part:load "heal1.sat") ;; (#[entity 2 1] #[entity 3 1] #[entity 4 1] ;; #[entity 5 1]) ; Zoom the view in order to see the part (zoom-all) ;; #[view 1076700200] ; Combine the faces into a body (define body1 (hh:combine (list (entity 2) (entity 3) (entity 4) (entity 5)))) ;; body1 ; Prepare the body for healing (hh:init-body-for-healing body1) ;; #[entity 6 1] (hh:analyze-lump body1) ;; () |
[Top]
body | body |
acis-opts | acis-options |
; hh:analyze-shell ; Load a file containing a bad part (part:load "heal1.sat") ;; (#[entity 2 1] #[entity 3 1] #[entity 4 1] ;; #[entity 5 1]) ; Zoom the view in order to see the part (zoom-all) ;; #[view 1076700200] ; Combine the faces into a body (define body1 (hh:combine (list (entity 2) (entity 3) (entity 4) (entity 5)))) ;; body1 ; Prepare the body for healing (hh:init-body-for-healing body1) ;; #[entity 6 1] (hh:analyze-shell body1) ;; () |
[Top]
body | body |
simp-opts | Simp_Options |
acis-opts | acis-options |
Description
This extension analyzes the body
and intelligently sets values of required options and tolerances for geometry simplification.
Geometry simplification attempts to simplify NURBS surfaces into analytic forms (planes,
cylinders, cones, tori, and spheres). If the body is fully analytic, this extension sets a
flag in the simplification aggregate attribute indicating that no geometry simplification is needed.
; hh:analyze-simplify ; Analyze a body for possible simplification. ; Load a file containing a bad part (part:load "heal1.sat") ;; (#[entity 2 1] #[entity 3 1] #[entity 4 1] ;; #[entity 5 1]) ; Zoom the view in order to see the part (zoom-all) ;; #[view 1076700200] ; Combine the faces into a body (define body1 (hh:combine (list (entity 2) (entity 3) (entity 4) (entity 5)))) ;; body1 ; Prepare the body for healing (hh:preprocess body1) ;; #[entity 6 1] (hh:analyze-simplify body1) ; SIMPLIFICATION ANALYSIS : ; ========================= ; INPUT STATISTICS : ; 4 Splines, ; 0 Planes, ; 0 Spheres, ; 0 Cylinders, ; 0 Cones, ; 0 Tori ; Simplification not recommended ;; () |
[Top]
body | body |
acis-opts | acis-options |
Description
This extension analyzes the body and intelligently sets values of required options and
tolerances for stitching. Stitching attempts to pair up edges of free faces and stitch
them together. If no stitching is needed, this extension sets a flag in the stitching
aggregate attribute indicating this.
; hh:analyze-stitch ; Analyze a body for stitching tolerance. ; Load a file containing a bad part (part:load "heal1.sat") ;; (#[entity 2 1] #[entity 3 1] #[entity 4 1] ;; #[entity 5 1]) ; Zoom the view in order to see the part (zoom-all) ;; #[view 1076700200] ; Combine the faces into a body (define body1 (hh:combine (list (entity 2) (entity 3) (entity 4) (entity 5)))) ;; body1 ; Prepare the body for healing (hh:preprocess body1) ;; #[entity 6 1] (hh:analyze-stitch body1) ; STITCH ANALYSIS : ; ================= ; Input Body Statistics : ; 0 Solids ; 0 Sheets ; 4 Free faces ; Min. Stitch tolerance = 1e-005 ; Max. Stitch tolerance = 1 ;; () |
[Top]
entity | entity |
acis-opts | acis-options |
; hh:analyze-vertex ; Check vertices for errors. ; Load a file containing a bad part (part:load "heal1.sat") ;; (#[entity 2 1] #[entity 3 1] #[entity 4 1] ;; #[entity 5 1]) ; Zoom the view in order to see the entities. (zoom-all) ;; #[view 1076700200] ; Combine the faces into a body (define body1 (hh:combine (list (entity 2) (entity 3) (entity 4) (entity 5)))) ;; body1 ; Prepare the body for healing (hh:init-body-for-healing body1) ;; #[entity 6 1] (hh:analyze-vertex body1) ;; () |
[Top]
body | body |
filename | string |
acis-opts | acis-options |
Description
This extension takes a body and returns a body which may be partially healed. The body
may consist of individual faces built with the hh:combine extension.
The extension scans the input entity looking for inconsistencies in the topology. It removes some inconsistencies, such as edges without geometry. It also trims the surface geometries wherever possible.
The steps taken are:
Build constraints by analyzing all tangency conditions.
Solve analytic surface constraints by modifying analytic surfaces to satisfy the tangent constraints.
Re-intersect transverse edges.
Solve tangent spline constraints by modifying the associated spline surfaces.
If the optional filename string is supplied, a summary will be written to the file. A suffix of .log is appended to the filename.
; hh:autoheal ; Autoheal a body. ; Load a file containing a bad part (part:load "heal1.sat") ;; (#[entity 2 1] #[entity 3 1] #[entity 4 1] ;; #[entity 5 1]) ; Zoom the view in order to see the part (define zoom (zoom-all)) ;; zoom ; Combine the faces into a body (define body1 (hh:combine (list (entity 2) (entity 3) (entity 4) (entity 5)))) ;; body1 (hh:autoheal body1 "log") ; PRE-PROCESS RESULTS : ; ===================== ; No of zero edges removed : 0 ; No of zero faces removed : 0 ; No of duplicate vertices : 0 ; No of edge grouping : 0 ; ; SIMPLIFICATION ANALYSIS : ; ========================= ; INPUT STATISTICS : ; 4 Splines, 0 Planes, 0 Spheres, 0 Cylinders, ; 0 Cones, 0 Tori present in the body ; Simplification not recommended ; ; SIMPLIFICATION FIX RESULTS : ; ============================ ; ; Simplification tolerance = 0.0001 ; no. of initial splines = 4 ; no. of final splines = 4 ; 0 Planes, 0 Spheres, 0 Cylinders, 0 Cones, ; 0 Tori got made from splines ; ; STITCH ANALYSIS : ; ================= ; ; Input Body Statistics : ; 0 Solids ; 0 Sheets ; 4 Free faces ; ; Min. Stitch tolerance = 1e-05 ; Max. Stitch tolerance = 1 ; ; Stitching 4 lumps at tolerence 0.00001 ; Stitching 3 lumps at tolerence 0.000025 ; Stitching 3 lumps at tolerence 0.00005 ; Stitching 3 lumps at tolerence 0.000075 ; Stitching 3 lumps at tolerence 0.0001 ; Stitching 3 lumps at tolerence 0.00025 ; Stitching 3 lumps at tolerence 0.0005 ; Stitching 3 lumps at tolerence 0.00075 ; Stitching 3 lumps at tolerence 0.001 ; Stitching 3 lumps at tolerence 0.0025 ; Stitching 3 lumps at tolerence 0.005 ; Stitching 3 lumps at tolerence 0.0075 ; Stitching 3 lumps at tolerence 0.01 ; Stitching 3 lumps at tolerence 0.025 ; ; STITCH CALCULATION RESULTS : ; ============================ ; min tol used = 1e-05 ; max tol used = 1 ; no. solid lumps expected = 0 ; no. sheet lumps expected = 1 ; no. free faces expected = 0 ; no. unshared loops expected = 1 ; no. unshared edges expected = 9 ; ; STITCH RESULTS : ; ================ ; min_tol = 1e-05 ; 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 ; ; GEOMBUILD ANALYSIS : ; ==================== ; geom build tol = 0.075 ; analytic solver tol = 0.01 ; isospline solver tol = 0.075 ; no. of edges = 13 ; no. of bad edges = 7 ; no. of coedges = 17 ; no. of bad coedges = 17 ; no. of vertices = 10 ; no. of bad vertices = 2 ; no. of bad tangent edges = 2 ; no. of 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 = 1 ; no. of bad tangent edges nonuv_nonuv = 0 ; no. of bad tangent edges 3_4_sided = 1 ; no. of surfaces = 4 ; no. of discontinuous surfaces = 0 ; percentage of good geom = 37 ; ; ANALYTIC SOLVER RESULTS : ; ========================= ; 1 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 RESULTS : ; ========================== ; 1 isospline tangent junctions resolved ; 0 isospline tangent junctions unresolved ; 0 splines bent to vertices ; ; SHARP EDGE SOLVER RESULTS : ; =========================== ; 5 sharp edges resolved ; (2 intersected, 0 exact projections, ; 3 approx projections) ; 0 sharp edges unresolved ; 2 vertices resolved ; (0 intersected, 2 exact projections, ; 0 approx projections) ; 0 vertices unresolved ; ; GEN-SPLINE RESULTS : ; ==================== ; 1 4-sided patches made ; 0 3-sided patches made ; 0 failures ; 0 unsolvable junctions ; ; WRAPUP ANALYSE RESULTS : ; ======================== ; 17 Coedges bad. ; ; WRAPUP RESULTS : ; ================ ; 17 pcurves computed ; 4 edges trimmed ; ; GEOMBUILD CALCULATION RESULTS : ; =============================== ; ; Analytic Solver : ; 1 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 ; 0 isospline tangent junctions unresolved ; 0 splines bent to vertices ; ; Reblending : ; 0 faces classified as blends ; ; Sharp Edge Solver : ; 5 sharp edges resolved ; (2 intersected, 0 exact projections, ; 3 approx projections) ; 0 sharp edges unresolved ; 2 vertices resolved ; (0 intersected, 2 exact projections, ; 0 approx projections) ; 0 vertices unresolved ; ; Generic Spline Solver : ; 1 4-sided patches made ; 0 3-sided patches made ; 0 failures ; 0 unsolvable junctions ; ; Wrapup Module : ; 17 pcurves computed ; 4 edges trimmed ; ; GEOMBUILD FIX RESULTS : ; ======================= ; Statistics of the healed body after ; geombuild fix : ; no. of edges = 13 ; no. of bad edges = 0 ; no. of coedges = 17 ; no. of bad coedges = 0 ; no. of vertices = 10 ; no. of bad vertices = 0 ; no. of bad tangent edges = 0 ; no. of bad tangent edges analytic = 0 ; no. of bad tangent edges uv_uv = 0 ; no. of bad tangent edges boundary uv_uv = 0 ; no. of bad tangent edges uv_nonuv = 0 ; no. of bad tangent edges nonuv_nonuv = 0 ; no. of bad tangent edges 3_4_sided = 0 ; no. of surfaces = 4 ; no. of discontinuous surfaces = 0 ; percentage of good geom = 100 ; ; Post-processing body after healing ... ; *** Warning (kernel/sg_husk/net:BAD_SPLINE_APPROX) ; Bad spline approximation ;; (#[entity 6 1] 72 100) ; Remove healing attributes (hh:terminate-body-for-healing body1) ;; #[entity 6 1] |
[Top]
body-list | body | (body ...) |
acis-opts | acis-options |
; hh:combine ; Combine two blocks into a single body. (define block1 (solid:block (position 0 0 0) (position 10 20 20))) ;; block1 ; Create block 2. (define block2 (solid:block (position 20 0 0) (position 30 40 40))) ;; block2 ; OUTPUT Original ; Combine the blocks into a single body ; with two lumps. (define body1 (hh:combine (list block1 block2))) ;; body1 ; OUTPUT Result Figure. hh:combine |
[Top]
body | body |
acis-opts | acis-options |
Description
This extension automatically performs the analyze, calculate, and fix stages of the
geometry building phase. Intelligent tolerances that are recommended by the analyze stage
are used in the calculate stage. The geometry building phase performs all the geometry
related healing operations, including fixing of edge geometries by intersections, snapping
surfaces for fixing tangencies, and refitting spline surfaces.
; hh:geombuild ; Load a file containing a bad part (part:load "heal1.sat") ;; (#[entity 2 1] #[entity 3 1] #[entity 4 1] ;; #[entity 5 1]) ; Zoom the view in order to see the part (zoom-all) ;; #[view 1076700200] ; Combine the faces into a body (define body1 (hh:combine (list (entity 2) (entity 3) (entity 4) (entity 5)))) ;; body1 ; Prepare the body for healing (hh:preprocess body1) ;; #[entity 6 1] ; Output the results of geombuild to a file (debug:file "geom.log") ;; #[file-input-output-port "geom.log"] (define geom (hh:geombuild body1)) ;; geom ; Close the debug file (debug:file "stdout") ;; #[file-input-output-port "stdout"] ; Open the text file "geom.log" to see the ; following results of hh:geombuild. ; GEOMBUILD ANALYSIS : ; ==================== ; geom build tol = 0.01 ; analytic solver tol = 0.01 ; isospline solver tol = 0.01 ; no. of edges = 17 ; no. of bad edges = 4 ; no. of coedges = 17 ; no. of bad coedges = 4 ; no. of vertices = 17 ; no. of bad vertices = 0 ; no. of bad tangent edges = 0 ; no. of bad tangent edges analytic = 0 ; no. of bad tangent edges uv_uv = 0 ; no. of bad tangent edges boundary uv_uv = 0 ; no. of bad tangent edges uv_nonuv = 0 ; no. of bad tangent edges nonuv_nonuv = 0 ; no. of bad tangent edges 3_4_sided = 0 ; no. of surfaces = 4 ; no. of discontinuous surfaces = 0 ; percentage of good geom = 92 ; ; GEOMBUILD CALCULATION RESULTS : ; =============================== ; Analytic Solver : ; 1 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 : ; 0 isospline tangent junctions resolved ; 0 isospline tangent junctions unresolved ; 0 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 ; 0 vertices resolved ; (0 intersected, 0 exact projections, ; 0 approx projections) ; 0 vertices unresolved ; ; Generic Spline Solver : ; 0 4-sided patches made ; 0 3-sided patches made ; 0 failures ; 0 unsolvable junctions ; ; Wrapup Module : ; 4 pcurves computed ; 0 edges trimmed ; ; GEOMBUILD FIX RESULTS : ; ======================= ; Statistics of the healed body after ; geombuild fix : ; no. of edges = 17 ; no. of bad edges = 0 ; no. of coedges = 17 ; no. of bad coedges = 0 ; no. of vertices = 17 ; no. of bad vertices = 0 ; no. of bad tangent edges = 0 ; no. of bad tangent edges analytic = 0 ; no. of bad tangent edges uv_uv = 0 ; no. of bad tangent edges boundary uv_uv = 0 ; no. of bad tangent edges uv_nonuv = 0 ; no. of bad tangent edges nonuv_nonuv = 0 ; no. of bad tangent edges 3_4_sided = 0 ; no. of surfaces = 4 ; no. of discontinuous surfaces = 0 ; percentage of good geom = 100 |
[Top]
body | body |
acis-opts | acis-options |
Description
This extension automatically performs the analyze, calculate, and fix stages of the
geometry building phase. Intelligent tolerances that are recommended by the analyze stage
are used in the calculate stage. The geometry building phase performs all the geometry
related healing operations, including fixing of edge geometries by intersections, snapping
surfaces for fixing tangencies, and refitting spline surfaces.
; hh:geombuild-analyze ; Load a file containing a bad part (define load (part:load "heal1.sat")) ;; load ; Zoom the view in order to see the part. (zoom-all) ;; #[view 5183062] ; Combine the faces into a body. (define body1 (hh:combine (part:entities))) ;; body1 ; Heal the body. (define heal (hh:geombuild-analyze body1)) ;; heal |
[Top]
body | body |
Description
The analytic tolerance is used in the analytic solver subphase of geometry building,
which fixes tangency constraints in the model. This is an upper bound for deviation of the
analytic surfaces to satisfy the constraints. The default value of 0.01 permits
translations of 0.01 to be performed to surfaces.
; hh:get-analytic-tol ; Get the analytic healing tolerance for a body. ; Load a file containing a bad part (part:load "heal1.sat") ;; (#[entity 2 1] #[entity 3 1] #[entity 4 1] ;; #[entity 5 1]) ; Zoom the view in order to see the part (zoom-all) ;; #[view 1076700200] ; Combine the faces into a body (define body1 (hh:combine (list (entity 2) (entity 3) (entity 4) (entity 5)))) ;; body1 ; Prepare the body for healing (hh:preprocess body1) ;; #[entity 6 1] ; Do geombuild analysis (hh:analyze-geom body1) ;; () ; Get the analytic tolerance (hh:get-analytic-tol body1) ;; 0 |
[Top]
body | body |
Description
The geometry build tolerance drives the actual geometry building of the model. This
should typically be slightly more (around 3 times) than the maximum gap size in the model.
The maximum gap size calculated during stitching is used as the geometry building
tolerance for automatic healing (autoheal). However, the user may need to increase the
geometry building tolerance if the healed geometry deviates substantially from the
original geometry.
; hh:get-geombuild-tol ; Get the geometry build healing tolerance ; for a body. ; Load a file containing a bad part (part:load "heal1.sat") ;; (#[entity 2 1] #[entity 3 1] #[entity 4 1] ;; #[entity 5 1]) ; Zoom the view in order to see the part (zoom-all) ;; #[view 1076700200] ; Combine the faces into a body (define body1 (hh:combine (list (entity 2) (entity 3) (entity 4) (entity 5)))) ;; body1 ; Prepare the body for healing (hh:preprocess body1) ;; #[entity 6 1] ; Do geombuild analysis (hh:analyze-geom body1) ; GEOMBUILD ANALYSIS : ; ==================== ; geom build tol = 0.01 ; analytic solver tol = 0.01 ; isospline solver tol = 0.01 ; no. of edges = 17 ; no. of bad edges = 4 ; no. of coedges = 17 ; no. of bad coedges = 4 ; no. of vertices = 17 ; no. of bad vertices = 0 ; no. of bad tangent edges = 0 ; no. of bad tangent edges analytic = 0 ; no. of bad tangent edges uv_uv = 0 ; no. of bad tangent edges boundary uv_uv = 0 ; no. of bad tangent edges uv_nonuv = 0 ; no. of bad tangent edges nonuv_nonuv = 0 ; no. of bad tangent edges 3_4_sided = 0 ; no. of surfaces = 4 ; no. of discontinuous surfaces = 0 ; percentage of good geom = 92 ;; () ; Now get tolerance (hh:get-geombuild-tol body1) ;; 100 |
[Top]
body | body |
Description
The isospline solver attempts to heal all edges shared by tangential isoparametric
surfaces (for example, the intersection curve is an isoparametric curve of both splines in the
intersection). It calculates isoparametric junctions of spline geometries intersecting
tangentially.
; hh:get-isospline-tol ; Get the isospline healing tolerance for a body. ; Load a file containing a bad part (part:load "heal1.sat") ;; (#[entity 2 1] #[entity 3 1] #[entity 4 1] ;; #[entity 5 1]) ; Zoom the view in order to see the part (zoom-all) ;; #[view 1076700200] ; Combine the faces into a body (define body1 (hh:combine (list (entity 2) (entity 3) (entity 4) (entity 5)))) ;; body1 ; Prepare the body for healing (hh:preprocess body1) ;; #[entity 6 1] ; Do geombuild analysis (hh:analyze-geom body1) ; GEOMBUILD ANALYSIS : ; ==================== ; geom build tol = 0.01 ; analytic solver tol = 0.01 ; isospline solver tol = 0.01 ; no. of edges = 17 ; no. of bad edges = 4 ; no. of coedges = 17 ; no. of bad coedges = 4 ; no. of vertices = 17 ; no. of bad vertices = 0 ; no. of bad tangent edges = 0 ; no. of bad tangent edges analytic = 0 ; no. of bad tangent edges uv_uv = 0 ; no. of bad tangent edges boundary uv_uv = 0 ; no. of bad tangent edges uv_nonuv = 0 ; no. of bad tangent edges nonuv_nonuv = 0 ; no. of bad tangent edges 3_4_sided = 0 ; no. of surfaces = 4 ; no. of discontinuous surfaces = 0 ; percentage of good geom = 92 ;; () ; Now get tolerance (hh:get-isospline-tol body1) ;; 0 |
[Top]
body | body |
Description
The geometry simplification tolerance is the tolerance at which spline surfaces get
simplified to analytic surfaces. If the tolerance is tight (as default is), only spline
surfaces that are exact analytic surfaces get simplified. If the tolerance is loosened,
then approximate analytic fits to splines are obtained. In such cases, the gaps between
surfaces may increase and healing in subsequent operations may be more difficult. The need
for increasing tolerances typically arises when analytic surfaces are output as NUBS
surfaces rather than NURBS surfaces. The default tolerance is 0.0001 (length units), which
obtains a very good approximation of analytic surfaces to spline surfaces in most models.
; hh:get-simplify-tol ; Get the simplify healing tolerance for a body. ; Load a file containing a bad part (part:load "heal1.sat") ;; (#[entity 2 1] #[entity 3 1] #[entity 4 1] ;; #[entity 5 1]) ; Zoom the view in order to see the part (zoom-all) ;; #[view 1076700200] ; Combine the faces into a body (define body1 (hh:combine (list (entity 2) (entity 3) (entity 4) (entity 5)))) ;; body1 ; Prepare the body for healing (hh:preprocess body1) ;; #[entity 6 1] ; Do simplify analysis (hh:analyze-simplify body1) ; SIMPLIFICATION ANALYSIS : ; ========================= ; INPUT STATISTICS : ; 4 Splines, 0 Planes, 0 Spheres, 0 Cylinders, ; 0 Cones, 0 Tori present in the body ; Simplification not recommended ;; () ; Get tolerance (hh:get-simplify-tol body1) ;; 0.0001 |
[Top]
body | body |
Description
The minimum and maximum stitching tolerances specify the range in which stitching
between edges is performed. The stitching begins from the minimum tolerance and increases
in steps towards the maximum tolerance.
; hh:get-stitch-max-tol ; Get the maximum stitching healing tolerance ; for a body. ; Load a file containing a bad part (part:load "heal1.sat") ;; (#[entity 2 1] #[entity 3 1] #[entity 4 1] ;; #[entity 5 1]) ; Zoom the view in order to see the part (zoom-all) ;; #[view 1076700200] ; Combine the faces into a body (define body1 (hh:combine (list (entity 2) (entity 3) (entity 4) (entity 5)))) ;; body1 ; Prepare the body for healing (hh:preprocess body1) ;; #[entity 6 1] ; Do stitch analysis (hh:analyze-stitch body1) ; STITCH ANALYSIS : ; ================= ; Input Body Statistics : ; 0 Solids ; 0 Sheets ; 4 Free faces ; Min. Stitch tolerance = 1e-005 ; Max. Stitch tolerance = 1 ;; () ; Get tolerance (hh:get-stitch-max-tol body1) ;; 1 |
[Top]
body | body |
Description
The minimum and maximum stitching tolerances specify the range in which stitching
between edges is performed. The stitching begins from the minimum tolerance and increases
in steps towards the maximum tolerance.
; hh:get-stitch-min-tol ; Get the minimum stitching tolerance. ; Load a file containing a bad part (part:load "heal1.sat") ;; (#[entity 2 1] #[entity 3 1] #[entity 4 1] ;; #[entity 5 1]) ; Zoom the view in order to see the part (zoom-all) ;; #[view 1076700200] ; Combine the faces into a body (define body1 (hh:combine (list (entity 2) (entity 3) (entity 4) (entity 5)))) ;; body1 ; Prepare the body for healing (hh:preprocess body1) ;; #[entity 6 1] ; Do stitch analysis (hh:analyze-stitch body1) ; STITCH ANALYSIS : ; ================= ; Input Body Statistics : ; 0 Solids ; 0 Sheets ; 4 Free faces ; Min. Stitch tolerance = 1e-005 ; Max. Stitch tolerance = 1 ;; () ; Get tolerance (hh:get-stitch-min-tol body1) ;; 1e-05 |
[Top]
body | body |
Description
This extension removes any previously defined healing attributes and then attaches a
new set of healing attributes to the body.
This extension should be called before any other healing extension.
; hh:init-body-for-healing ; Attach healing attributes ; Load a file containing a bad part (part:load "heal1.sat") ;; (#[entity 2 1] #[entity 3 1] #[entity 4 1] ;; #[entity 5 1]) ; Zoom the view in order to see the part (zoom-all) ;; #[view 1076700200] ; Combine the faces into a body (define body1 (hh:combine (list (entity 2) (entity 3) (entity 4) (entity 5)))) ;; body1 ; Prepare the body for healing (hh:init-body-for-healing body1) ;; #[entity 6 1] |
[Top]
body | body |
acis-opts | acis-options |
Description
This extension performs post-processing of the healed data. It performs such operations
as correction of negative area faces, duplicate vertices, and edge groups.
This extension should be called as the final step when healing is accomplished using individual healing components instead of autohealing.
; hh:postprocess ; Postprocess a healed body. ; Load a file containing a bad part (part:load "heal1.sat") ;; (#[entity 2 1] #[entity 3 1] #[entity 4 1] ;; #[entity 5 1]) ; Zoom the view in order to see the part (zoom-all) ;; #[view 1076700200] ; Combine the faces into a body (define body1 (hh:combine (list (entity 2) (entity 3) (entity 4) (entity 5)))) ;; body1 ; Prepare the body for healing (define preprocess (hh:preprocess body1)) ;; preprocess (define process (hh:postprocess body1)) ;; process |
[Top]
body | body |
acis-opts | acis-options |
Description
This extension scans the input entity to locate inconsistencies in the topology. It
removes some inconsistencies, such as zero-length edges, sliver faces, and duplicate
vertices.
This extension should be called as the first step when healing is to be accomplished using individual healing components instead of autohealing.
; hh:preprocess ; Preprocess a body for healing. ; Load a file containing a bad part (part:load "heal1.sat") ;; (#[entity 2 1] #[entity 3 1] #[entity 4 1] ;; #[entity 5 1]) ; Zoom the view in order to see the part (zoom-all) ;; #[view 1076700200] ; Combine the faces into a body (define body1 (hh:combine (list (entity 2) (entity 3) (entity 4) (entity 5)))) ;; body1 ; Prepare the body for healing (define preprocess (hh:preprocess body1)) ;; preprocess |
[Top]
None |
Description
Resets all the user define tolerances flags to false so that subsequent healing
operations will use the system defaults for all tolerance values.
; hh:reset-tols ; Set the isospline healing tolerance value. ; Load a file containing a bad part (part:load "heal1.sat") ;; (#[entity 2 1] #[entity 3 1] #[entity 4 1] ;; #[entity 5 1]) ; Zoom the view in order to see the part (zoom-all) ;; #[view 1076700200] ; Combine the faces into a body (define body1 (hh:combine (list (entity 2) (entity 3) (entity 4) (entity 5)))) ;; body1 (hh:set-isospline-tol 0.01) ;; () ; Autoheal will use user-defined tolerance (hh:autoheal body1) ; ... (autoheal results) ;; (#[entity 6 1] 72 100) ; Now reset tolerance flags to use default values for ; subsequent healing operations (hh:reset-tols) ;; () |
[Top]
tolerance | real |
; hh:set-analytic-tol ; Set the analytic healing tolerance value. ; Load a file containing a bad part (part:load "heal1.sat") ;; (#[entity 2 1] #[entity 3 1] #[entity 4 1] ;; #[entity 5 1]) ; Zoom the view in order to see the part (zoom-all) ;; #[view 1076700200] ; Combine the faces into a body (define body1 (hh:combine (list (entity 2) (entity 3) (entity 4) (entity 5)))) ;; body1 (hh:set-analytic-tol 0.01) ;; () |
[Top]
tolerance | real |
Description
The geometry build tolerance drives the actual geometry building of the model. This
should typically be slightly more (around 3 times) than the maximum gap size in the model.
The maximum gap size calculated during stitching is used as the geometry building
tolerance for automatic healing (autoheal). However, the user may need to increase the
geometry building tolerance if the healed geometry deviates substantially from the
original geometry.
; hh:set-geombuild-tol ; Set the geombuild healing tolerance value. ; Load a file containing a bad part (part:load "heal1.sat") ;; (#[entity 2 1] #[entity 3 1] #[entity 4 1] ;; #[entity 5 1]) ; Zoom the view in order to see the part (zoom-all) ;; #[view 1076700200] ; Combine the faces into a body (define body1 (hh:combine (list (entity 2) (entity 3) (entity 4) (entity 5)))) ;; body1 (hh:set-geombuild-tol 0.01) ;; () |
[Top]
tolerance | real |
Description
The isospline solver attempts to heal all edges shared by tangential isoparametric
surfaces (for example, the intersection curve is an isoparametric curve of both splines in the
intersection). It calculates isoparametric junctions of spline geometries intersecting
tangentially.
; hh:set-isospline-tol ; Set the isospline healing tolerance value. ; Load a file containing a bad part (part:load "heal1.sat") ;; (#[entity 2 1] #[entity 3 1] #[entity 4 1] ;; #[entity 5 1]) ; Zoom the view in order to see the part (zoom-all) ;; #[view 1076700200] ; Combine the faces into a body (define body1 (hh:combine (list (entity 2) (entity 3) (entity 4) (entity 5)))) ;; body1 (hh:set-isospline-tol 0.01) ;; () |
[Top]
tolerance | real |
Description
The geometry simplification tolerance is the tolerance at which spline surfaces get
simplified to analytic surfaces. If the tolerance is tight (as default is), only spline
surfaces that are exact analytic surfaces get simplified. If the tolerance is loosened,
then approximate analytic fits to splines are obtained. In such cases, the gaps between
surfaces may increase and healing in subsequent operations may be more difficult. The need
for increasing tolerances typically arises when analytic surfaces are output as NUBS
surfaces rather than NURBS surfaces. The default tolerance is 0.0001 (length units), which
obtains a very good approximation of analytic surfaces to spline surfaces in most models.
; hh:set-simplify-tol ; Set the simplify healing tolerance value. ; Load a file containing a bad part (part:load "heal1.sat") ;; (#[entity 2 1] #[entity 3 1] #[entity 4 1] ;; #[entity 5 1]) ; Zoom the view in order to see the part (zoom-all) ;; #[view 1076700200] ; Combine the faces into a body (define body1 (hh:combine (list (entity 2) (entity 3) (entity 4) (entity 5)))) ;; body1 (hh:set-simplify-tol 0.01) ;; () |
[Top]
tolerance | real |
Description
The minimum and maximum stitching tolerances specify the range in which stitching
between edges is performed. The stitching begins from the minimum tolerance and increases
in steps towards the maximum tolerance.
; hh:set-stitch-max-tol ; Set the maximum stitching healing tolerance value. ; Load a file containing a bad part (part:load "heal1.sat") ;; (#[entity 2 1] #[entity 3 1] #[entity 4 1] ;; #[entity 5 1]) ; Zoom the view in order to see the part (zoom-all) ;; #[view 1076700200] ; Combine the faces into a body (define body1 (hh:combine (list (entity 2) (entity 3) (entity 4) (entity 5)))) ;; body1 (hh:set-stitch-max-tol 0.01) ;; () |
[Top]
tolerance | real |
Description
The minimum and maximum stitching tolerances specify the range in which stitching
between edges is performed. The stitching begins from the minimum tolerance and increases
in steps towards the maximum tolerance.
; hh:set-stitch-min-tol ; Set the minimum stitching healing tolerance value. ; Load a file containing a bad part (part:load "heal1.sat") ;; (#[entity 2 1] #[entity 3 1] #[entity 4 1] ;; #[entity 5 1]) ; Zoom the view in order to see the part (zoom-all) ;; #[view 1076700200] ; Combine the faces into a body (define body1 (hh:combine (list (entity 2) (entity 3) (entity 4) (entity 5)))) ;; body1 (hh:set-stitch-min-tol 0.01) ;; () |
[Top]
body | body |
Description
This extension highlights any coedge of the input body that has an analysis attribute
indicating the coedge failed one or more of the analysis checks. This extension assumes
that the entity was already analyzed by the appropriate analyze scheme extension, and
should be called after analysis phase in healing.
; hh:show-bad-coedges ; Display bad coedges in a highlight color. ; Load a file containing a bad part (part:load "heal1.sat") ;; (#[entity 2 1] #[entity 3 1] #[entity 4 1] ;; #[entity 5 1]) ; Zoom the view in order to see the part (define zoom (zoom-all)) ;; zoom ; Combine the faces into a body (define body1 (hh:combine (list (entity 2) (entity 3) (entity 4) (entity 5)))) ;; body1 ; Prepare the body for healing (define preprocess (hh:preprocess body1)) ;; preprocess ; Analyze the geometry of the body (hh:analyze-body body1) ; GEOMBUILD CHECK RESULTS : ; Statistics of the body from geombuild check : ; no. of edges = 17 ; no. of bad edges = 4 ; no. of coedges = 17 ; no. of bad coedges = 4 ; no. of vertices = 17 ; no. of bad vertices = 0 ; no. of bad tangent edges = 0 ; no. of bad tangent edges analytic = 0 ; no. of G1 bad tangent edges analytic = 0 ; no. of bad tangent edges uv_uv = 0 ; no. of bad tangent edges boundary uv_uv = 0 ; no. of bad tangent edges uv_nonuv = 0 ; no. of bad tangent edges nonuv_nonuv = 0 ; no. of bad tangent edges 3_4_sided = 0 ; no. of surfaces = 4 ; no. of discontinuous surfaces = 0 ; percentage of good geom = 92 ; () ;; 92 (hh:show-bad-coedges body1) ;; (#[entity 7 1] #[entity 8 1] #[entity 9 1] #[entity 10 1]) ; OUTPUT Example Figure. hh:show-bad-coedges |
[Top]
body | body |
Description
This extension displays bad edges. Bad edges are those that do not lie on the
underlying surfaces and/or the vertices. This extension should be called after the
geometry analysis phase of healing.
; hh:show-bad-edges ; Display bad edges in a highlight color. ; Load a file containing a bad part (part:load "heal1.sat") ;; (#[entity 2 1] #[entity 3 1] #[entity 4 1] ;; #[entity 5 1]) ; Zoom the view in order to see the part (zoom-all) ;; #[view 1076700200] ; Combine the faces into a body (define body1 (hh:combine (list (entity 2) (entity 3) (entity 4) (entity 5)))) ;; body1 ; Prepare the body for healing (define preprocess (hh:preprocess body1)) ;; preprocess ; OUTPUT Original (hh:analyze-body body1) ; GEOMBUILD CHECK RESULTS : ; Statistics of the body from geombuild check : ; no. of edges = 17 ; no. of bad edges = 4 ; no. of coedges = 17 ; no. of bad coedges = 4 ; no. of vertices = 17 ; no. of bad vertices = 0 ; no. of bad tangent edges = 0 ; no. of bad tangent edges analytic = 0 ; no. of G1 bad tangent edges analytic = 0 ; no. of bad tangent edges uv_uv = 0 ; no. of bad tangent edges boundary uv_uv = 0 ; no. of bad tangent edges uv_nonuv = 0 ; no. of bad tangent edges nonuv_nonuv = 0 ; no. of bad tangent edges 3_4_sided = 0 ; no. of surfaces = 4 ; no. of discontinuous surfaces = 0 ; percentage of good geom = 92 ;() ;; 92 (hh:show-bad-edges body1) ;; (#[entity 7 1] #[entity 8 1] #[entity 9 1] #[entity 10 1]) ; OUTPUT Result Figure. hh:show-bad-edges |
[Top]
body | body |
Description
This extension highlights any face of the input body that has an analysis attribute
indicating the face failed one or more of the analysis checks. This extension assumes that
the entity was already analyzed by the appropriate analyze scheme extension. It should be
called after the analysis phase in healing.
; hh:show-bad-faces ; Display bad faces in a highlight color. ; Load a file containing a bad part (part:load "heal1.sat") ;; (#[entity 2 1] #[entity 3 1] #[entity 4 1] ;; #[entity 5 1]) ; Zoom the view in order to see the part (zoom-all) ;; #[view 1076700200] ; Combine the faces into a body (define body1 (hh:combine (list (entity 2) (entity 3) (entity 4) (entity 5)))) ;; body1 ; Prepare the body for healing (hh:preprocess body1) ;; #[entity 6 1] ; OUTPUT Original (hh:analyze-body body1) ; GEOMBUILD CHECK RESULTS : ; Statistics of the body from geombuild check : ; no. of edges = 17 ; no. of bad edges = 4 ; no. of coedges = 17 ; no. of bad coedges = 4 ; no. of vertices = 17 ; no. of bad vertices = 0 ; no. of bad tangent edges = 0 ; no. of bad tangent edges analytic = 0 ; no. of G1 bad tangent edges analytic = 0 ; no. of bad tangent edges uv_uv = 0 ; no. of bad tangent edges boundary uv_uv = 0 ; no. of bad tangent edges uv_nonuv = 0 ; no. of bad tangent edges nonuv_nonuv = 0 ; no. of bad tangent edges 3_4_sided = 0 ; no. of surfaces = 4 ; no. of discontinuous surfaces = 0 ; percentage of good geom = 92 ;() ;; 92 (hh:show-bad-faces body1) ;; () ; OUTPUT Result Figure. hh:show-bad-faces |
[Top]
body | body |
Description
This extension displays bad vertices. Bad vertices are those that do not lie on the
underlying surfaces and/or the edges. This extension should be called after the geombuild
analysis phase of healing.
; hh:show-bad-vertices ; Display bad vertices in a highlight color. ; Load a file containing a bad part (part:load "heal1.sat") ;; (#[entity 2 1] #[entity 3 1] #[entity 4 1] ;; #[entity 5 1]) ; Zoom the view in order to see the part (zoom-all) ;; #[view 1076700200] ; Combine the faces into a body (define body1 (hh:combine (list (entity 2) (entity 3) (entity 4) (entity 5)))) ;; body1 ; Prepare the body for healing (hh:preprocess body1) ;; #[entity 6 1] (hh:analyze-body body1) ; GEOMBUILD CHECK RESULTS : ; Statistics of the body from geombuild check : ; no. of edges = 17 ; no. of bad edges = 4 ; no. of coedges = 17 ; no. of bad coedges = 4 ; no. of vertices = 17 ; no. of bad vertices = 0 ; no. of bad tangent edges = 0 ; no. of bad tangent edges analytic = 0 ; no. of G1 bad tangent edges analytic = 0 ; no. of bad tangent edges uv_uv = 0 ; no. of bad tangent edges boundary uv_uv = 0 ; no. of bad tangent edges uv_nonuv = 0 ; no. of bad tangent edges nonuv_nonuv = 0 ; no. of bad tangent edges 3_4_sided = 0 ; no. of surfaces = 4 ; no. of discontinuous surfaces = 0 ; percentage of good geom = 92 ;() ;; 92 (hh:show-bad-vertices body1) ;; () |
[Top]
body | body |
; hh:show-body ; Display bad edges, vertices, faces and coedges in ; various highlight colors. ; Load a file containing a bad part (part:load "heal1.sat") ;; (#[entity 2 1] #[entity 3 1] #[entity 4 1] ;; #[entity 5 1]) ; Zoom the view in order to see the part (zoom-all) ;; #[view 1076700200] ; Combine the faces into a body (define body1 (hh:combine (list (entity 2) (entity 3) (entity 4) (entity 5)))) ;; body1 ; Prepare the body for healing (hh:preprocess body1) ;; #[entity 6 1] ; OUTPUT Original (hh:analyze-body body1) ; GEOMBUILD CHECK RESULTS : ; Statistics of the body from geombuild check : ; no. of edges = 17 ; no. of bad edges = 4 ; no. of coedges = 17 ; no. of bad coedges = 4 ; no. of vertices = 17 ; no. of bad vertices = 0 ; no. of bad tangent edges = 0 ; no. of bad tangent edges analytic = 0 ; no. of G1 bad tangent edges analytic = 0 ; no. of bad tangent edges uv_uv = 0 ; no. of bad tangent edges boundary uv_uv = 0 ; no. of bad tangent edges uv_nonuv = 0 ; no. of bad tangent edges nonuv_nonuv = 0 ; no. of bad tangent edges 3_4_sided = 0 ; no. of surfaces = 4 ; no. of discontinuous surfaces = 0 ; percentage of good geom = 92 ;() ;; 92 (hh:show-body body1) ; 4 edges bad ; 4 coedges bad ;; (#[entity 7 1] #[entity 8 1] #[entity 9 1] ;; #[entity 10 1] #[entity 11 1] #[entity 12 1] ;; #[entity 13 1] #[entity 14 1]) ; OUTPUT Result Figure. hh:show-body |
[Top]
body | body |
Description
This extension highlights any curve of the input body that has an analysis attribute
indicating the curve is closed.
; hh:show-closed-curves ; Display closed curves in a highlight color. ; Load a file containing a bad part (part:load "heal1.sat") ;; (#[entity 2 1] #[entity 3 1] #[entity 4 1] ;; #[entity 5 1]) ; Combine the faces into a body (define body1 (hh:combine (list (entity 2) (entity 3) (entity 4) (entity 5)))) ;; body1 ; Zoom the view in order to see the part (zoom-all) ;; #[view 1076700200] ; Prepare the body for healing (hh:preprocess body1) ;; #[entity 6 1] (hh:analyze-body body1) ; GEOMBUILD CHECK RESULTS : ; Statistics of the body from geombuild check : ; no. of edges = 17 ; no. of bad edges = 4 ; no. of coedges = 17 ; no. of bad coedges = 4 ; no. of vertices = 17 ; no. of bad vertices = 0 ; no. of bad tangent edges = 0 ; no. of bad tangent edges analytic = 0 ; no. of G1 bad tangent edges analytic = 0 ; no. of bad tangent edges uv_uv = 0 ; no. of bad tangent edges boundary uv_uv = 0 ; no. of bad tangent edges uv_nonuv = 0 ; no. of bad tangent edges nonuv_nonuv = 0 ; no. of bad tangent edges 3_4_sided = 0 ; no. of surfaces = 4 ; no. of discontinuous surfaces = 0 ; percentage of good geom = 92 ;() ;; 92 (hh:show-closed-curves body1) ;; () |
[Top]
body | body |
Description
This extension highlights any surface of the input body that has an analysis attribute
indicating the surface is closed.
; hh:show-closed-surfaces ; Display closed surfaces in a highlight color. (part:load "heal1.sat") ;; (#[entity 2 1] #[entity 3 1] #[entity 4 1] ;; #[entity 5 1]) ; Zoom the view in order to see the part (zoom-all) ;; #[view 1076700200] ; Combine the faces into a body (define body1 (hh:combine (list (entity 2) (entity 3) (entity 4) (entity 5)))) ;; body1 ; Prepare the body for healing (hh:preprocess body1) ;; #[entity 6 1] (hh:analyze-body body1) ; GEOMBUILD CHECK RESULTS : ; Statistics of the body from geombuild check : ; no. of edges = 17 ; no. of bad edges = 4 ; no. of coedges = 17 ; no. of bad coedges = 4 ; no. of vertices = 17 ; no. of bad vertices = 0 ; no. of bad tangent edges = 0 ; no. of bad tangent edges analytic = 0 ; no. of G1 bad tangent edges analytic = 0 ; no. of bad tangent edges uv_uv = 0 ; no. of bad tangent edges boundary uv_uv = 0 ; no. of bad tangent edges uv_nonuv = 0 ; no. of bad tangent edges nonuv_nonuv = 0 ; no. of bad tangent edges 3_4_sided = 0 ; no. of surfaces = 4 ; no. of discontinuous surfaces = 0 ; percentage of good geom = 92 ;() ;; 92 (hh:show-closed-surfaces body1) ;; () |
[Top]
body | body |
Description
This extension highlights any coedge of the input body that has an analysis attribute
indicating the coedge does not have a partner.
A list of all coedges in the body that do not have a partner is returned.
; hh:show-coedges-no-partner ; Show coedges without a partner in a highlighted ; color. ; Load a file containing a bad part (part:load "heal1.sat") ;; (#[entity 2 1] #[entity 3 1] #[entity 4 1] ;; #[entity 5 1]) ; Zoom the view in order to see the part (zoom-all) ;; #[view 1076700200] ; Combine the faces into a body (define body1 (hh:combine (list (entity 2) (entity 3) (entity 4) (entity 5)))) ;; body1 ; Prepare the body for healing (hh:preprocess body1) ;; #[entity 6 1] ; OUTPUT Original (hh:analyze-body body1) ; GEOMBUILD CHECK RESULTS : ; Statistics of the body from geombuild check : ; no. of edges = 17 ; no. of bad edges = 4 ; no. of coedges = 17 ; no. of bad coedges = 4 ; no. of vertices = 17 ; no. of bad vertices = 0 ; no. of bad tangent edges = 0 ; no. of bad tangent edges analytic = 0 ; no. of G1 bad tangent edges analytic = 0 ; no. of bad tangent edges uv_uv = 0 ; no. of bad tangent edges boundary uv_uv = 0 ; no. of bad tangent edges uv_nonuv = 0 ; no. of bad tangent edges nonuv_nonuv = 0 ; no. of bad tangent edges 3_4_sided = 0 ; no. of surfaces = 4 ; no. of discontinuous surfaces = 0 ; percentage of good geom = 92 ;() ;; 92 (hh:show-coedges-no-partner body1) ;; (#[entity 7 1] #[entity 8 1] #[entity 9 1] ;; #[entity 10 1] #[entity 11 1] #[entity 12 1] ;; #[entity 13 1] #[entity 14 1] #[entity 15 1] ;; #[entity 16 1] #[entity 17 1] #[entity 18 1] ;; #[entity 19 1] #[entity 20 1] #[entity 21 1] ;; #[entity 22 1] #[entity 23 1]) ; OUTPUT Result Figure. hh:show-coedges-no-partner |
[Top]
body | body |
Description
This extension highlights any coedge of the input body that has an analysis attribute
indicating the coedge does not lie on the surface.
; hh:show-coedges-not-on-faces ; Display coedges not on faces in highlighted color. ; Load a file containing a bad part (part:load "heal1.sat") ;; (#[entity 2 1] #[entity 3 1] #[entity 4 1] ;; #[entity 5 1]) ; Zoom the view in order to see the part (zoom-all) ;; #[view 1076700200] ; Combine the faces into a body (define body1 (hh:combine (list (entity 2) (entity 3) (entity 4) (entity 5)))) ;; body1 ; Prepare the body for healing (hh:preprocess body1) ;; #[entity 6 1] ; OUTPUT Original (hh:analyze-body body1) ; GEOMBUILD CHECK RESULTS : ; Statistics of the body from geombuild check : ; no. of edges = 17 ; no. of bad edges = 4 ; no. of coedges = 17 ; no. of bad coedges = 4 ; no. of vertices = 17 ; no. of bad vertices = 0 ; no. of bad tangent edges = 0 ; no. of bad tangent edges analytic = 0 ; no. of G1 bad tangent edges analytic = 0 ; no. of bad tangent edges uv_uv = 0 ; no. of bad tangent edges boundary uv_uv = 0 ; no. of bad tangent edges uv_nonuv = 0 ; no. of bad tangent edges nonuv_nonuv = 0 ; no. of bad tangent edges 3_4_sided = 0 ; no. of surfaces = 4 ; no. of discontinuous surfaces = 0 ; percentage of good geom = 92 ;() ;; 92 (hh:show-coedges-not-on-faces body1) ;; (#[entity 7 1] #[entity 8 1]) ; OUTPUT Result Figure. hh:show-coedges-not-on-faces |
[Top]
body | body |
Description
This extension highlights any edge of the input body that has an analysis attribute
indicating that the edge is concave.
; hh:show-concave-edges ; Display concave edges in a highlighted color. ; Load a file containing a bad part (part:load "heal1.sat") ;; (#[entity 2 1] #[entity 3 1] #[entity 4 1] ;; #[entity 5 1]) ; Zoom the view in order to see the part (zoom-all) ;; #[view 1076700200] ; Combine the faces into a body (define body1 (hh:combine (list (entity 2) (entity 3) (entity 4) (entity 5)))) ;; body1 ; Prepare the body for healing (hh:preprocess body1) ;; #[entity 6 1] (hh:analyze-body body1) ; GEOMBUILD CHECK RESULTS : ; Statistics of the body from geombuild check : ; no. of edges = 17 ; no. of bad edges = 4 ; no. of coedges = 17 ; no. of bad coedges = 4 ; no. of vertices = 17 ; no. of bad vertices = 0 ; no. of bad tangent edges = 0 ; no. of bad tangent edges analytic = 0 ; no. of G1 bad tangent edges analytic = 0 ; no. of bad tangent edges uv_uv = 0 ; no. of bad tangent edges boundary uv_uv = 0 ; no. of bad tangent edges uv_nonuv = 0 ; no. of bad tangent edges nonuv_nonuv = 0 ; no. of bad tangent edges 3_4_sided = 0 ; no. of surfaces = 4 ; no. of discontinuous surfaces = 0 ; percentage of good geom = 92 ;() ;; 92 (hh:show-concave-edges body1) ;; () |
[Top]
body | body |
Description
This extension highlights any edge of the input body that has an analysis attribute
indicating that the edge is convex.
; hh:show-convex-edges ; Display convex edges in a highlighted color. ; Load a file containing a bad part (part:load "heal1.sat") ;; (#[entity 2 1] #[entity 3 1] #[entity 4 1] ;; #[entity 5 1]) ; Zoom the view in order to see the part (zoom-all) ;; #[view 1076700200] ; Combine the faces into a body (define body1 (hh:combine (list (entity 2) (entity 3) (entity 4) (entity 5)))) ;; body1 ; Prepare the body for healing (hh:preprocess body1) ;; #[entity 6 1] (hh:analyze-body body1) ; GEOMBUILD CHECK RESULTS : ; Statistics of the body from geombuild check : ; no. of edges = 17 ; no. of bad edges = 4 ; no. of coedges = 17 ; no. of bad coedges = 4 ; no. of vertices = 17 ; no. of bad vertices = 0 ; no. of bad tangent edges = 0 ; no. of bad tangent edges analytic = 0 ; no. of G1 bad tangent edges analytic = 0 ; no. of bad tangent edges uv_uv = 0 ; no. of bad tangent edges boundary uv_uv = 0 ; no. of bad tangent edges uv_nonuv = 0 ; no. of bad tangent edges nonuv_nonuv = 0 ; no. of bad tangent edges 3_4_sided = 0 ; no. of surfaces = 4 ; no. of discontinuous surfaces = 0 ; percentage of good geom = 92 ;() ;; 92 (hh:show-convex-edges body1) ;; () |
[Top]
body | body |
Description
This extension highlights any curve of the input body that has an analysis attribute
indicating the curve is degenerate.
; hh:show-degenerate-curves ; Display degenerate curves in a highlighted color. ; Load a file containing a bad part (part:load "heal1.sat") ;; (#[entity 2 1] #[entity 3 1] #[entity 4 1] ;; #[entity 5 1]) ; Zoom the view in order to see the part (zoom-all) ;; #[view 1076700200] ; Combine the faces into a body (define body1 (hh:combine (list (entity 2) (entity 3) (entity 4) (entity 5)))) ;; body1 ; Prepare the body for healing (hh:preprocess body1) ;; #[entity 6 1] (hh:analyze-body body1) ; GEOMBUILD CHECK RESULTS : ; Statistics of the body from geombuild check : ; no. of edges = 17 ; no. of bad edges = 4 ; no. of coedges = 17 ; no. of bad coedges = 4 ; no. of vertices = 17 ; no. of bad vertices = 0 ; no. of bad tangent edges = 0 ; no. of bad tangent edges analytic = 0 ; no. of G1 bad tangent edges analytic = 0 ; no. of bad tangent edges uv_uv = 0 ; no. of bad tangent edges boundary uv_uv = 0 ; no. of bad tangent edges uv_nonuv = 0 ; no. of bad tangent edges nonuv_nonuv = 0 ; no. of bad tangent edges 3_4_sided = 0 ; no. of surfaces = 4 ; no. of discontinuous surfaces = 0 ; percentage of good geom = 92 ;() ;; 92 (hh:show-degenerate-curves body1) ;; () |
[Top]
body | body |
Description
This extension highlights any surface of the input body that has an analysis attribute
indicating the surface is degenerate.
; hh:show-degenerate-surfaces ; Display degenerate surfaces in a highlighted color. ; Load a file containing a bad part (part:load "heal1.sat") ;; (#[entity 2 1] #[entity 3 1] #[entity 4 1] ;; #[entity 5 1]) ; Zoom the view in order to see the part (zoom-all) ;; #[view 1076700200] ; Combine the faces into a body (define body1 (hh:combine (list (entity 2) (entity 3) (entity 4) (entity 5)))) ;; body1 ; Prepare the body for healing (hh:preprocess body1) ;; #[entity 6 1] (hh:analyze-body body1) ; GEOMBUILD CHECK RESULTS : ; Statistics of the body from geombuild check : ; no. of edges = 17 ; no. of bad edges = 4 ; no. of coedges = 17 ; no. of bad coedges = 4 ; no. of vertices = 17 ; no. of bad vertices = 0 ; no. of bad tangent edges = 0 ; no. of bad tangent edges analytic = 0 ; no. of G1 bad tangent edges analytic = 0 ; no. of bad tangent edges uv_uv = 0 ; no. of bad tangent edges boundary uv_uv = 0 ; no. of bad tangent edges uv_nonuv = 0 ; no. of bad tangent edges nonuv_nonuv = 0 ; no. of bad tangent edges 3_4_sided = 0 ; no. of surfaces = 4 ; no. of discontinuous surfaces = 0 ; percentage of good geom = 92 ;() ;; 92 (hh:show-degenerate-surfaces body1) ;; () |
[Top]
body | body |
Description
This extension highlights any curve of the input body that has an analysis attribute
indicating the curve is not continuous.
; hh:show-discontinuous-curves ; Display discontinuous curves in a ; highlighted color. ; Load a file containing a bad part (part:load "heal1.sat") ;; (#[entity 2 1] #[entity 3 1] #[entity 4 1] ;; #[entity 5 1]) ; Zoom the view in order to see the part (zoom-all) ;; #[view 1076700200] ; Combine the faces into a body (define body1 (hh:combine (list (entity 2) (entity 3) (entity 4) (entity 5)))) ;; body1 ; Prepare the body for healing (hh:preprocess body1) ;; #[entity 6 1] (hh:analyze-body body1) ; GEOMBUILD CHECK RESULTS : ; Statistics of the body from geombuild check : ; no. of edges = 17 ; no. of bad edges = 4 ; no. of coedges = 17 ; no. of bad coedges = 4 ; no. of vertices = 17 ; no. of bad vertices = 0 ; no. of bad tangent edges = 0 ; no. of bad tangent edges analytic = 0 ; no. of G1 bad tangent edges analytic = 0 ; no. of bad tangent edges uv_uv = 0 ; no. of bad tangent edges boundary uv_uv = 0 ; no. of bad tangent edges uv_nonuv = 0 ; no. of bad tangent edges nonuv_nonuv = 0 ; no. of bad tangent edges 3_4_sided = 0 ; no. of surfaces = 4 ; no. of discontinuous surfaces = 0 ; percentage of good geom = 92 ;() ;; 92 (hh:show-discontinuous-curves body1) ;; () |
[Top]
body | body |
Description
This extension highlights any surface of the input body that has an analysis attribute
indicating the surface is not continuous.
; hh:show-discontinuous-surfaces ; Display discontinuous surfaces in a ; highlighted color. ; Load a file containing a bad part (part:load "heal1.sat") ;; (#[entity 2 1] #[entity 3 1] #[entity 4 1] ;; #[entity 5 1]) ; Zoom the view in order to see the part (zoom-all) ;; #[view 1076700200] ; Combine the faces into a body (define body1 (hh:combine (list (entity 2) (entity 3) (entity 4) (entity 5)))) ;; body1 ; Prepare the body for healing (hh:preprocess body1) ;; #[entity 6 1] (hh:analyze-body body1) ; GEOMBUILD CHECK RESULTS : ; Statistics of the body from geombuild check : ; no. of edges = 17 ; no. of bad edges = 4 ; no. of coedges = 17 ; no. of bad coedges = 4 ; no. of vertices = 17 ; no. of bad vertices = 0 ; no. of bad tangent edges = 0 ; no. of bad tangent edges analytic = 0 ; no. of G1 bad tangent edges analytic = 0 ; no. of bad tangent edges uv_uv = 0 ; no. of bad tangent edges boundary uv_uv = 0 ; no. of bad tangent edges uv_nonuv = 0 ; no. of bad tangent edges nonuv_nonuv = 0 ; no. of bad tangent edges 3_4_sided = 0 ; no. of surfaces = 4 ; no. of discontinuous surfaces = 0 ; percentage of good geom = 92 ;() ;; 92 (hh:show-discontinuous-surfaces body1) ;; () |
[Top]
body | body |
Description
This extension highlights any loop of the input body that has an analysis attribute
indicating that the loop has an incorrect orientation.
; hh:show-loops-disoriented ; Display disoriented loops in a highlighted color. ; Load a file containing a bad part (part:load "heal1.sat") ;; (#[entity 2 1] #[entity 3 1] #[entity 4 1] ;; #[entity 5 1]) ; Zoom the view in order to see the part (zoom-all) ;; #[view 1076700200] ; Combine the faces into a body (define body1 (hh:combine (list (entity 2) (entity 3) (entity 4) (entity 5)))) ;; body1 ; Prepare the body for healing (hh:preprocess body1) ;; #[entity 6 1] (hh:analyze-body body1) ; GEOMBUILD CHECK RESULTS : ; Statistics of the body from geombuild check : ; no. of edges = 17 ; no. of bad edges = 4 ; no. of coedges = 17 ; no. of bad coedges = 4 ; no. of vertices = 17 ; no. of bad vertices = 0 ; no. of bad tangent edges = 0 ; no. of bad tangent edges analytic = 0 ; no. of G1 bad tangent edges analytic = 0 ; no. of bad tangent edges uv_uv = 0 ; no. of bad tangent edges boundary uv_uv = 0 ; no. of bad tangent edges uv_nonuv = 0 ; no. of bad tangent edges nonuv_nonuv = 0 ; no. of bad tangent edges 3_4_sided = 0 ; no. of surfaces = 4 ; no. of discontinuous surfaces = 0 ; percentage of good geom = 92 ;() ;; 92 (hh:show-loops-disoriented body1) ;; () |
[Top]
body | body |
; hh:show-loops-gaps ; Display loops with gaps in a highlighted color. ; Load a file containing a bad part (part:load "heal1.sat") ;; (#[entity 2 1] #[entity 3 1] #[entity 4 1] ;; #[entity 5 1]) ; Zoom the view in order to see the part (zoom-all) ;; #[view 1076700200] ; Combine the faces into a body (define body1 (hh:combine (list (entity 2) (entity 3) (entity 4) (entity 5)))) ;; body1 ; Prepare the body for healing (hh:preprocess body1) ;; #[entity 6 1] (hh:analyze-body body1) ; GEOMBUILD CHECK RESULTS : ; Statistics of the body from geombuild check : ; no. of edges = 17 ; no. of bad edges = 4 ; no. of coedges = 17 ; no. of bad coedges = 4 ; no. of vertices = 17 ; no. of bad vertices = 0 ; no. of bad tangent edges = 0 ; no. of bad tangent edges analytic = 0 ; no. of G1 bad tangent edges analytic = 0 ; no. of bad tangent edges uv_uv = 0 ; no. of bad tangent edges boundary uv_uv = 0 ; no. of bad tangent edges uv_nonuv = 0 ; no. of bad tangent edges nonuv_nonuv = 0 ; no. of bad tangent edges 3_4_sided = 0 ; no. of surfaces = 4 ; no. of discontinuous surfaces = 0 ; percentage of good geom = 92 ;() ;; 92 (hh:show-loops-gaps body1) ;; () |
[Top]
body | body |
Description
This extension highlights any loop of the input body that has an analysis attribute
indicating that the loop does not lie on the face.
; hh:show-loops-not-on-faces ; Display loops not on faces in a highlighted ; color. ; Load a file containing a bad part (part:load "heal1.sat") ;; (#[entity 2 1] #[entity 3 1] #[entity 4 1] ;; #[entity 5 1]) ; Zoom the view in order to see the part (zoom-all) ;; #[view 1076700200] ; Combine the faces into a body (define body1 (hh:combine (list (entity 2) (entity 3) (entity 4) (entity 5)))) ;; body1 ; Prepare the body for healing (hh:preprocess body1) ;; #[entity 6 1] ; OUTPUT Original (hh:analyze-body body1) ; GEOMBUILD CHECK RESULTS : ; Statistics of the body from geombuild check : ; no. of edges = 17 ; no. of bad edges = 4 ; no. of coedges = 17 ; no. of bad coedges = 4 ; no. of vertices = 17 ; no. of bad vertices = 0 ; no. of bad tangent edges = 0 ; no. of bad tangent edges analytic = 0 ; no. of G1 bad tangent edges analytic = 0 ; no. of bad tangent edges uv_uv = 0 ; no. of bad tangent edges boundary uv_uv = 0 ; no. of bad tangent edges uv_nonuv = 0 ; no. of bad tangent edges nonuv_nonuv = 0 ; no. of bad tangent edges 3_4_sided = 0 ; no. of surfaces = 4 ; no. of discontinuous surfaces = 0 ; percentage of good geom = 92 ;() ;; 92 (hh:show-loops-not-on-faces body1) ;; () ; OUTPUT Result Figure. hh:show-loops-not-on-faces |
[Top]
body | body |
Description
This extension highlights any loop of the input body that has an analysis attribute
indicating that the loop is open.
; hh:show-loops-open ; Display open loops in a highlighted color. ; Load a file containing a bad part (part:load "heal1.sat") ;; (#[entity 2 1] #[entity 3 1] #[entity 4 1] ;; #[entity 5 1]) ; Zoom the view in order to see the part (zoom-all) ;; #[view 1076700200] ; Combine the faces into a body (define body1 (hh:combine (list (entity 2) (entity 3) (entity 4) (entity 5)))) ;; body1 ; Prepare the body for healing (hh:preprocess body1) ;; #[entity 6 1] (hh:analyze-body body1) ; GEOMBUILD CHECK RESULTS : ; Statistics of the body from geombuild check : ; no. of edges = 17 ; no. of bad edges = 4 ; no. of coedges = 17 ; no. of bad coedges = 4 ; no. of vertices = 17 ; no. of bad vertices = 0 ; no. of bad tangent edges = 0 ; no. of bad tangent edges analytic = 0 ; no. of G1 bad tangent edges analytic = 0 ; no. of bad tangent edges uv_uv = 0 ; no. of bad tangent edges boundary uv_uv = 0 ; no. of bad tangent edges uv_nonuv = 0 ; no. of bad tangent edges nonuv_nonuv = 0 ; no. of bad tangent edges 3_4_sided = 0 ; no. of surfaces = 4 ; no. of discontinuous surfaces = 0 ; percentage of good geom = 92 ;() ;; 92 (hh:show-loops-open body1) ;; () |
[Top]
body | body |
Description
This extension highlights any lump of the input body that has an analysis attribute
indicating lump is bad.
; hh:show-lumps ; Display lumps in a highlighted color. ; Load a file containing a bad part (part:load "heal1.sat") ;; (#[entity 2 1] #[entity 3 1] #[entity 4 1] ;; #[entity 5 1]) ; Zoom the view in order to see the part (zoom-all) ;; #[view 1076700200] ; Combine the faces into a body (define body1 (hh:combine (list (entity 2) (entity 3) (entity 4) (entity 5)))) ;; body1 ; Prepare the body for healing (hh:preprocess body1) ;; #[entity 6 1] ; OUTPUT Original (hh:analyze-body body1) ; GEOMBUILD CHECK RESULTS : ; Statistics of the body from geombuild check : ; no. of edges = 17 ; no. of bad edges = 4 ; no. of coedges = 17 ; no. of bad coedges = 4 ; no. of vertices = 17 ; no. of bad vertices = 0 ; no. of bad tangent edges = 0 ; no. of bad tangent edges analytic = 0 ; no. of G1 bad tangent edges analytic = 0 ; no. of bad tangent edges uv_uv = 0 ; no. of bad tangent edges boundary uv_uv = 0 ; no. of bad tangent edges uv_nonuv = 0 ; no. of bad tangent edges nonuv_nonuv = 0 ; no. of bad tangent edges 3_4_sided = 0 ; no. of surfaces = 4 ; no. of discontinuous surfaces = 0 ; percentage of good geom = 92 ;() ;; 92 (hh:show-lumps body1) ;; () ; OUTPUT Result Figure. hh:show-lumps |
[Top]
body | body |
Description
This extension highlights any curve of the input body that has an analysis attribute
indicating the curve is periodic.
; hh:show-periodic-curves ; Display periodic curves in a highlighted ; color. ; Load a file containing a bad part (part:load "heal1.sat") ;; (#[entity 2 1] #[entity 3 1] #[entity 4 1] ;; #[entity 5 1]) ; Zoom the view in order to see the part (zoom-all) ;; #[view 1076700200] ; Combine the faces into a body (define body1 (hh:combine (list (entity 2) (entity 3) (entity 4) (entity 5)))) ;; body1 ; Prepare the body for healing (hh:preprocess body1) ;; #[entity 6 1] ; OUTPUT Original (hh:analyze-body body1) ; GEOMBUILD CHECK RESULTS : ; Statistics of the body from geombuild check : ; no. of edges = 17 ; no. of bad edges = 4 ; no. of coedges = 17 ; no. of bad coedges = 4 ; no. of vertices = 17 ; no. of bad vertices = 0 ; no. of bad tangent edges = 0 ; no. of bad tangent edges analytic = 0 ; no. of G1 bad tangent edges analytic = 0 ; no. of bad tangent edges uv_uv = 0 ; no. of bad tangent edges boundary uv_uv = 0 ; no. of bad tangent edges uv_nonuv = 0 ; no. of bad tangent edges nonuv_nonuv = 0 ; no. of bad tangent edges 3_4_sided = 0 ; no. of surfaces = 4 ; no. of discontinuous surfaces = 0 ; percentage of good geom = 92 ;() ;; 92 (hh:show-periodic-curves body1) ;; () ; OUTPUT Result Figure. hh:show-periodic-curves |
[Top]
body | body |
Description
This extension highlights any surface of the input body that has an analysis attribute
indicating the surface is periodic.
; hh:show-periodic-surfaces ; Display periodic surfaces in a highlighted ; color. ; Load a file containing a bad part (part:load "heal1.sat") ;; (#[entity 2 1] #[entity 3 1] #[entity 4 1] ;; #[entity 5 1]) ; Zoom the view in order to see the part (zoom-all) ;; #[view 1076700200] ; Combine the faces into a body (define body1 (hh:combine (list (entity 2) (entity 3) (entity 4) (entity 5)))) ;; body1 ; Prepare the body for healing (hh:preprocess body1) ;; #[entity 6 1] (hh:analyze-body body1) ; GEOMBUILD CHECK RESULTS : ; Statistics of the body from geombuild check : ; no. of edges = 17 ; no. of bad edges = 4 ; no. of coedges = 17 ; no. of bad coedges = 4 ; no. of vertices = 17 ; no. of bad vertices = 0 ; no. of bad tangent edges = 0 ; no. of bad tangent edges analytic = 0 ; no. of G1 bad tangent edges analytic = 0 ; no. of bad tangent edges uv_uv = 0 ; no. of bad tangent edges boundary uv_uv = 0 ; no. of bad tangent edges uv_nonuv = 0 ; no. of bad tangent edges nonuv_nonuv = 0 ; no. of bad tangent edges 3_4_sided = 0 ; no. of surfaces = 4 ; no. of discontinuous surfaces = 0 ; percentage of good geom = 92 ;() ;; 92 (hh:show-periodic-surfaces body1) ;; () |
[Top]
body | body |
Description
This extension highlights any curve of the input body that has an analysis attribute
indicating the curve is self-intersecting.
; hh:show-self-intersecting-curves ; Display self intersecting surfaces in a highlighted ; color. ; Load a file containing a bad part (part:load "heal1.sat") ;; (#[entity 2 1] #[entity 3 1] #[entity 4 1] ;; #[entity 5 1]) ; Zoom the view in order to see the part (zoom-all) ;; #[view 1076700200] ; Combine the faces into a body (define body1 (hh:combine (list (entity 2) (entity 3) (entity 4) (entity 5)))) ;; body1 ; Prepare the body for healing (hh:preprocess body1) ;; #[entity 6 1] (hh:analyze-body body1) ; GEOMBUILD CHECK RESULTS : ; Statistics of the body from geombuild check : ; no. of edges = 17 ; no. of bad edges = 4 ; no. of coedges = 17 ; no. of bad coedges = 4 ; no. of vertices = 17 ; no. of bad vertices = 0 ; no. of bad tangent edges = 0 ; no. of bad tangent edges analytic = 0 ; no. of G1 bad tangent edges analytic = 0 ; no. of bad tangent edges uv_uv = 0 ; no. of bad tangent edges boundary uv_uv = 0 ; no. of bad tangent edges uv_nonuv = 0 ; no. of bad tangent edges nonuv_nonuv = 0 ; no. of bad tangent edges 3_4_sided = 0 ; no. of surfaces = 4 ; no. of discontinuous surfaces = 0 ; percentage of good geom = 92 ;() ;; 92 (hh:show-self-intersecting-curves body1) ;; () |
[Top]
body | body |
Description
This extension highlights any surface of the input body that has an analysis attribute
indicating the surface is self-intersecting.
; hh:show-self-intersecting-surfaces ; Display self intersecting surfaces in a highlighted ; color. ; Load a file containing a bad part (part:load "heal1.sat") ;; (#[entity 2 1] #[entity 3 1] #[entity 4 1] ;; #[entity 5 1]) ; Zoom the view in order to see the part (zoom-all) ;; #[view 1076700200] ; Combine the faces into a body (define body1 (hh:combine (list (entity 2) (entity 3) (entity 4) (entity 5)))) ;; body1 ; Prepare the body for healing (hh:preprocess body1) ;; #[entity 6 1] (hh:analyze-body body1) ; GEOMBUILD CHECK RESULTS : ; Statistics of the body from geombuild check : ; no. of edges = 17 ; no. of bad edges = 4 ; no. of coedges = 17 ; no. of bad coedges = 4 ; no. of vertices = 17 ; no. of bad vertices = 0 ; no. of bad tangent edges = 0 ; no. of bad tangent edges analytic = 0 ; no. of G1 bad tangent edges analytic = 0 ; no. of bad tangent edges uv_uv = 0 ; no. of bad tangent edges boundary uv_uv = 0 ; no. of bad tangent edges uv_nonuv = 0 ; no. of bad tangent edges nonuv_nonuv = 0 ; no. of bad tangent edges 3_4_sided = 0 ; no. of surfaces = 4 ; no. of discontinuous surfaces = 0 ; percentage of good geom = 92 ;() ;; 92 (hh:show-self-intersecting-surfaces body1) ;; () |
[Top]
body | body |
Description
This extension highlights any shell of the input body that has an analysis attribute
indicating that the shell is bad.
; hh:show-shells ; Display shells and bad shells in ; highlighted colors. ; Load a file containing a bad part (part:load "heal1.sat") ;; (#[entity 2 1] #[entity 3 1] #[entity 4 1] ;; #[entity 5 1]) ; Zoom the view in order to see the part (zoom-all) ;; #[view 1076700200] ; Combine the faces into a body (define body1 (hh:combine (list (entity 2) (entity 3) (entity 4) (entity 5)))) ;; body1 ; Prepare the body for healing (hh:preprocess body1) ;; #[entity 6 1] ; OUTPUT Original (hh:analyze-body body1) ; GEOMBUILD CHECK RESULTS : ; Statistics of the body from geombuild check : ; no. of edges = 17 ; no. of bad edges = 4 ; no. of coedges = 17 ; no. of bad coedges = 4 ; no. of vertices = 17 ; no. of bad vertices = 0 ; no. of bad tangent edges = 0 ; no. of bad tangent edges analytic = 0 ; no. of G1 bad tangent edges analytic = 0 ; no. of bad tangent edges uv_uv = 0 ; no. of bad tangent edges boundary uv_uv = 0 ; no. of bad tangent edges uv_nonuv = 0 ; no. of bad tangent edges nonuv_nonuv = 0 ; no. of bad tangent edges 3_4_sided = 0 ; no. of surfaces = 4 ; no. of discontinuous surfaces = 0 ; percentage of good geom = 92 ;() ;; 92 (hh:show-shells body1) ;; () ; OUTPUT Result Figure. hh:show-shells |
[Top]
body | body |
Description
This extension highlights any edge of the input body that has an analysis attribute
indicating that the edge length is less than the geometry tolerance.
; hh:show-short-edges ; Display short edges in a highlighted color. ; Load a file containing a bad part (part:load "heal1.sat") ;; (#[entity 2 1] #[entity 3 1] #[entity 4 1] ;; #[entity 5 1]) ; Zoom the view in order to see the part (zoom-all) ;; #[view 1076700200] ; Combine the faces into a body (define body1 (hh:combine (list (entity 2) (entity 3) (entity 4) (entity 5)))) ;; body1 ; Prepare the body for healing (hh:preprocess body1) ;; #[entity 6 1] ; OUTPUT Original (hh:analyze-body body1) ; GEOMBUILD CHECK RESULTS : ; Statistics of the body from geombuild check : ; no. of edges = 17 ; no. of bad edges = 4 ; no. of coedges = 17 ; no. of bad coedges = 4 ; no. of vertices = 17 ; no. of bad vertices = 0 ; no. of bad tangent edges = 0 ; no. of bad tangent edges analytic = 0 ; no. of G1 bad tangent edges analytic = 0 ; no. of bad tangent edges uv_uv = 0 ; no. of bad tangent edges boundary uv_uv = 0 ; no. of bad tangent edges uv_nonuv = 0 ; no. of bad tangent edges nonuv_nonuv = 0 ; no. of bad tangent edges 3_4_sided = 0 ; no. of surfaces = 4 ; no. of discontinuous surfaces = 0 ; percentage of good geom = 92 ;() ;; 92 (hh:show-short-edges body1) ;; (#[entity 7 1] #[entity 8 1] #[entity 9 1] ;; #[entity 10 1] #[entity 11 1] #[entity 12 1] ;; #[entity 13 1] #[entity 14 1] #[entity 15 1] ;; #[entity 16 1] #[entity 17 1] #[entity 18 1] ;; #[entity 19 1] #[entity 20 1] #[entity 21 1] ;; #[entity 22 1] #[entity 23 1]) ; OUTPUT Result Figure. hh:show-short-edges |
[Top]
body | body |
Description
This extension shows faces that have been simplified. It should be called after the
simplify phase of healing is completed.
; hh:show-simplified ; Display simplified faces in a highlighted color. ; Load a file containing a bad part (part:load "heal1.sat") ;; (#[entity 2 1] #[entity 3 1] #[entity 4 1] ;; #[entity 5 1]) ; Zoom the view in order to see the part (zoom-all) ;; #[view 1076700200] ; Combine the faces into a body (define body1 (hh:combine (list (entity 2) (entity 3) (entity 4) (entity 5)))) ;; body1 ; Prepare the body for healing (hh:preprocess body1) ;; #[entity 6 1] (hh:analyze-body body1) ; GEOMBUILD CHECK RESULTS : ; Statistics of the body from geombuild check : ; no. of edges = 17 ; no. of bad edges = 4 ; no. of coedges = 17 ; no. of bad coedges = 4 ; no. of vertices = 17 ; no. of bad vertices = 0 ; no. of bad tangent edges = 0 ; no. of bad tangent edges analytic = 0 ; no. of G1 bad tangent edges analytic = 0 ; no. of bad tangent edges uv_uv = 0 ; no. of bad tangent edges boundary uv_uv = 0 ; no. of bad tangent edges uv_nonuv = 0 ; no. of bad tangent edges nonuv_nonuv = 0 ; no. of bad tangent edges 3_4_sided = 0 ; no. of surfaces = 4 ; no. of discontinuous surfaces = 0 ; percentage of good geom = 92 ;() ;; 92 (hh:show-simplified body1) ;; () Figure. hh:show-simplified |
[Top]
body | body |
Description
This extension shows spline faces. It should be called after the simplify analysis is
done.
; hh:show-spline ; Display spline faces in a highlighted color. ; Load a file containing a bad part (part:load "heal1.sat") ;; (#[entity 2 1] #[entity 3 1] #[entity 4 1] ;; #[entity 5 1]) ; Zoom the view in order to see the part (zoom-all) ;; #[view 1076700200] ; Combine the faces into a body (define body1 (hh:combine (list (entity 2) (entity 3) (entity 4) (entity 5)))) ;; body1 ; Prepare the body for healing (hh:preprocess body1) ;; #[entity 6 1] (hh:analyze-body body1) ; GEOMBUILD CHECK RESULTS : ; Statistics of the body from geombuild check : ; no. of edges = 17 ; no. of bad edges = 4 ; no. of coedges = 17 ; no. of bad coedges = 4 ; no. of vertices = 17 ; no. of bad vertices = 0 ; no. of bad tangent edges = 0 ; no. of bad tangent edges analytic = 0 ; no. of G1 bad tangent edges analytic = 0 ; no. of bad tangent edges uv_uv = 0 ; no. of bad tangent edges boundary uv_uv = 0 ; no. of bad tangent edges uv_nonuv = 0 ; no. of bad tangent edges nonuv_nonuv = 0 ; no. of bad tangent edges 3_4_sided = 0 ; no. of surfaces = 4 ; no. of discontinuous surfaces = 0 ; percentage of good geom = 92 ;() ;; 92 (hh:show-spline body1) ;; () |
[Top]
body | body |
Description
This extension highlights any edge of the input body that has an analysis attribute
indicating that the edge joins two tangent faces.
; hh:show-tangent-edges ; Display tangent edges in a highlighted color. ; Load a file containing a bad part (part:load "heal1.sat") ;; (#[entity 2 1] #[entity 3 1] #[entity 4 1] ;; #[entity 5 1]) ; Zoom the view in order to see the part (zoom-all) ;; #[view 1076700200] ; Combine the faces into a body (define body1 (hh:combine (list (entity 2) (entity 3) (entity 4) (entity 5)))) ;; body1 ; Prepare the body for healing (hh:preprocess body1) ;; #[entity 6 1] ; OUTPUT original (hh:analyze-geom body1) ; GEOMBUILD ANALYSIS : ; ==================== ; geom build tol = 0.01 ; analytic solver tol = 0.01 ; isospline solver tol = 0.01 ; no. of edges = 17 ; no. of bad edges = 4 ; no. of coedges = 17 ; no. of bad coedges = 4 ; no. of vertices = 17 ; no. of bad vertices = 0 ; no. of bad tangent edges = 0 ; no. of bad tangent edges analytic = 0 ; no. of bad tangent edges uv_uv = 0 ; no. of bad tangent edges boundary uv_uv = 0 ; no. of bad tangent edges uv_nonuv = 0 ; no. of bad tangent edges nonuv_nonuv = 0 ; no. of bad tangent edges 3_4_sided = 0 ; no. of surfaces = 4 ; no. of discontinuous surfaces = 0 ; percentage of good geom = 92 ;; () (hh:show-tangent-edges body1) ;; () ; OUTPUT Result Figure. hh:show-tangent-edges |
[Top]
body | body |
Description
This extension changes the color of any edge of the input body that is a tolerant edge.
; hh:show-tolerant-edges ; Display tolerant edges in a highlighted color. ; Load a file containing a bad part (part:load "heal1.sat") ;; (#[entity 2 1] #[entity 3 1] #[entity 4 1] ;; #[entity 5 1]) ; Zoom the view in order to see the part (zoom-all) ;; #[view 1076700200] ; Combine the faces into a body (define body1 (hh:combine (list (entity 2) (entity 3) (entity 4) (entity 5)))) ;; body1 ; Autoheal the body (hh:autoheal body1) ; ... (autoheal results) ;; (#[entity 6 1] 72 100) (hh:show-tolerant-edges body1) ;; () |
[Top]
body | body |
Description
This extension shows the common edges of unstitched faces. It should be called after
the stitch analysis phase of healing.
; hh:show-unstitched ; Display common edges of unstitched faces ; in a highlighted color. ; Load a file containing a bad part (part:load "heal1.sat") ;; (#[entity 2 1] #[entity 3 1] #[entity 4 1] ;; #[entity 5 1]) ; Zoom the view in order to see the part (zoom-all) ;; #[view 1076700200] ; Combine the faces into a body (define body1 (hh:combine (list (entity 2) (entity 3) (entity 4) (entity 5)))) ;; body1 ; Prepare the body for healing (hh:preprocess body1) ;; #[entity 6 1] ; OUTPUT Original (hh:stitch body1) ; STITCH RESULTS : ; ================ ; min_tol = 1e-05 ; max_tol = 1 ; no. solid lumps made = 0 ; no. sheet lumps made = 1 ; no. unshared loops = 1 ; no. unshared edges = 9 ;; #[entity 6 1] (hh:show-unstitched body1) ;; (#[entity 7 1] #[entity 8 1] #[entity 9 1] ;; #[entity 10 1] #[entity 11 1] #[entity 12 1] ;; #[entity 13 1] #[entity 14 1] #[entity 15 1]) ; OUTPUT Result Figure. hh:show-unstitched |
[Top]
body | body |
Description
This extension highlights any vertex of the input body that has an analysis attribute
indicating the vertex is associated with edges that do not meet at the vertex.
; hh:show-vertices-edges-dont-meet ; Display vertices where associated edges ; do not meet in highlighted colors. ; Load a file containing a bad part (part:load "heal1.sat") ;; (#[entity 2 1] #[entity 3 1] #[entity 4 1] ;; #[entity 5 1]) ; Zoom the view in order to see the part (zoom-all) ;; #[view 1076700200] ; Combine the faces into a body (define body1 (hh:combine (list (entity 2) (entity 3) (entity 4) (entity 5)))) ;; body1 ; Prepare the body for healing (hh:preprocess body1) ;; #[entity 6 1] ; OUTPUT Original (hh:analyze-body body1) ; GEOMBUILD CHECK RESULTS : ; Statistics of the body from geombuild check : ; no. of edges = 17 ; no. of bad edges = 4 ; no. of coedges = 17 ; no. of bad coedges = 4 ; no. of vertices = 17 ; no. of bad vertices = 0 ; no. of bad tangent edges = 0 ; no. of bad tangent edges analytic = 0 ; no. of G1 bad tangent edges analytic = 0 ; no. of bad tangent edges uv_uv = 0 ; no. of bad tangent edges boundary uv_uv = 0 ; no. of bad tangent edges uv_nonuv = 0 ; no. of bad tangent edges nonuv_nonuv = 0 ; no. of bad tangent edges 3_4_sided = 0 ; no. of surfaces = 4 ; no. of discontinuous surfaces = 0 ; percentage of good geom = 92 ;() ;; 92 (hh:show-vertices-edges-dont-meet body1) ;; () ; OUTPUT Result Figure. hh:show-vertices-edges-dont-meet |
[Top]
body | body |
Description
This extension highlights any vertex of the input body that has an analysis attribute
indicating the vertex does not lie on the edge.
; hh:show-vertices-not-on-edges ; Display vertices not on edges in highlighted ; colors. ; Load a file containing a bad part (part:load "heal1.sat") ;; (#[entity 2 1] #[entity 3 1] #[entity 4 1] ;; #[entity 5 1]) ; Zoom the view in order to see the part (zoom-all) ;; #[view 1076700200] ; Combine the faces into a body (define body1 (hh:combine (list (entity 2) (entity 3) (entity 4) (entity 5)))) ;; body1 ; Prepare the body for healing (hh:preprocess body1) ;; #[entity 6 1] ; OUTPUT Original (hh:analyze-body body1) ; GEOMBUILD CHECK RESULTS : ; Statistics of the body from geombuild check : ; no. of edges = 17 ; no. of bad edges = 4 ; no. of coedges = 17 ; no. of bad coedges = 4 ; no. of vertices = 17 ; no. of bad vertices = 0 ; no. of bad tangent edges = 0 ; no. of bad tangent edges analytic = 0 ; no. of G1 bad tangent edges analytic = 0 ; no. of bad tangent edges uv_uv = 0 ; no. of bad tangent edges boundary uv_uv = 0 ; no. of bad tangent edges uv_nonuv = 0 ; no. of bad tangent edges nonuv_nonuv = 0 ; no. of bad tangent edges 3_4_sided = 0 ; no. of surfaces = 4 ; no. of discontinuous surfaces = 0 ; percentage of good geom = 92 ;() ;; 92 (hh:show-vertices-not-on-edges body1) ;; () ; OUTPUT Result Figure. hh:show-vertices-not-on-edges |
[Top]
body | body |
Description
This extension highlights any vertex of the input body that has an analysis attribute
indicating the vertex does not lie on the surface.
; hh:show-vertices-not-on-faces ; Display vertices not on faces in highlighted ; colors. ; Load a file containing a bad part (part:load "heal1.sat") ;; (#[entity 2 1] #[entity 3 1] #[entity 4 1] ;; #[entity 5 1]) ; Zoom the view in order to see the part (zoom-all) ;; #[view 1076700200] ; Combine the faces into a body (define body1 (hh:combine (list (entity 2) (entity 3) (entity 4) (entity 5)))) ;; body1 ; Prepare the body for healing (hh:preprocess body1) ;; #[entity 6 1] ; OUTPUT Original (hh:analyze-body body1) ; GEOMBUILD CHECK RESULTS : ; Statistics of the body from geombuild check : ; no. of edges = 17 ; no. of bad edges = 4 ; no. of coedges = 17 ; no. of bad coedges = 4 ; no. of vertices = 17 ; no. of bad vertices = 0 ; no. of bad tangent edges = 0 ; no. of bad tangent edges analytic = 0 ; no. of G1 bad tangent edges analytic = 0 ; no. of bad tangent edges uv_uv = 0 ; no. of bad tangent edges boundary uv_uv = 0 ; no. of bad tangent edges uv_nonuv = 0 ; no. of bad tangent edges nonuv_nonuv = 0 ; no. of bad tangent edges 3_4_sided = 0 ; no. of surfaces = 4 ; no. of discontinuous surfaces = 0 ; percentage of good geom = 92 ;() ;; 92 (hh:show-vertices-not-on-faces body1) ;; () ; OUTPUT Result Figure. hh:show-vertices-not-on-faces |
[Top]
"name-of-option" | string |
value | integer | options | Simp_Options |
Description
This extension returns a Simp_Options object
for use in hh:analyze-simplify
and hh:simplify. This allows you
to set the simplification tolerance, maximum permissible circle radius, and the option
of switching curve and face simplification ON/OFF.
;1. Load the body (part:load "xxx.sat" ) (define body (hh:combine (part:entities))) ;2. Make the simplification options object "Simp_Options" (define so (hh:simp-options "do_curve_simplification" 1 "simplify_pos_tol" 0.001)) ; To check the values of parameters of simp-options, type the option's name at the prompt so ;3. For updating the parameters of an existing Simp_Options object, the same scheme command ; (hh:simp-options ) can be used by passing the options object as the last argument. ; (For example: hh:simp-options "do_surface_simplification" 1 so) ;4. Call simplification (hh:simplify body so) |
[Top]
body | body |
simp-opts | Simp_Options |
acis-opts | acis-options |
Description
This extension replaces the spline surfaces
with the equivalent analytic representation where possible. This extension must follow the analysis
extension.
; hh:simplify ; Replace spline surfaces with analytic surfaces ; where possible. ; Load a file containing a bad part (part:load "heal1.sat") ;; (#[entity 2 1] #[entity 3 1] #[entity 4 1] ;; #[entity 5 1]) ; Zoom the view in order to see the part (zoom-all) ;; #[view 1076700200] ; Combine the faces into a body (define body1 (hh:combine (list (entity 2) (entity 3) (entity 4) (entity 5)))) ;; body1 ; Prepare the body for healing (hh:preprocess body1) ;; #[entity 6 1] ; Make the simplification options object "Simp_Options" (define so (hh:simp-options "do_curve_simplification" 1 "do_surface_simplification" 1 "simplify_pos_tol" 0.0001)) ; To check the values of parameters of Simp_Options just type the option's name on the prompt so (hh:simplify body1 so) ; GEOM SIMPLIFICATION STATS: ; simplification tol= 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] |
[Top]
body | body |
acis-opts | acis-options |
Description
The analytic solver subphase attempts to heal all edges and vertices shared by analytic
surfaces.
; hh:solve-analytic ; Load a file containing a bad part. (define load (part:load 'heal1.sat)) ;; load ; zoom the view. (zoom-all) ;; #[view 5183062] ; Combine the faces into a body. (define body1 (hh:combine (part:entities))) ;; body1 ; heal body (define solve (hh:solve-analytic body1)) ;; solve |
[Top]
body | body |
acis-opts | acis-options |
Description
The generic spline solver attempts to heal generic tangential spline junction (for example,
the intersection curve is not an isoparametric curve of both splines in the intersection
curve).
; hh:solve-gen-spline ; Load a file containing a bad part. (define load (part:load 'heal1.sat)) ;; load ; zoom the view. (zoom-all) ;; #[view 5183062] ; Combine the faces into a body. (define body1 (hh:combine (part:entities))) ;; body1 ; heal body (hh:solve-gen-spline body1)) ;; #[entity 6 1] |
[Top]
body | body |
acis-opts | acis-options |
Description
The isospline solver attempts to heal all edges shared by tangential isoparametric
surfaces (for example, the intersection curve is an isoparametric curve of both splines in the
intersection).
; hh:solve-isospline ; Load a file containing a bad part. (define load (part:load 'heal1.sat)) ;; load ; zoom the view. (zoom-all) ;; #[view 5183062] ; Combine the faces into a body. (define body1 (hh:combine (part:entities))) ;; body1 ; heal body (hh:solve-isospline body1)) ;; #[entity 6 1] |
[Top]
body | body |
acis-opts | acis-options |
Description
The sharp edge solver attempts to heal all edges and vertices that are shared by
surfaces that intersect sharply. This includes nontangential surface junctions.
; hh:solve-sharp-edge ; Load a file containing a bad part. (define load (part:load 'heal1.sat)) ;; load ; zoom the view. (zoom-all) ;; #[view 5183062] ; Combine the faces into a body. (define body1 (hh:combine (part:entities))) ;; body1 ; heal body (hh:solve-sharp-edge body1)) ;; #[entity 6] |
[Top]
body | body |
acis-opts | acis-options |
Description
This extension attempts to stitch the input set of faces into a solid or single sheet
body.
A small stitch tolerance is selected and all faces that can be stitched together at that tolerance are processed. Then the tolerance is increased and the remaining faces are processed and stitched if possible. This process is continued until all faces are stitched together or a maximum stitch tolerance is exceeded.
; hh:stitch ; Stitch faces into a single lump body if possible. ; Load a file containing a bad part (part:load "heal1.sat") ;; (#[entity 2 1] #[entity 3 1] #[entity 4 1] ;; #[entity 5 1]) ; Zoom the view in order to see the part (zoom-all) ;; #[view 1076700200] ; Combine the faces into a body (define body1 (hh:combine (list (entity 2) (entity 3) (entity 4) (entity 5)))) ;; body1 ; Prepare the body for healing (hh:preprocess body1) ;; #[entity 6 1] (hh:stitch body1) ; STITCH RESULTS : ; ================ ; min_tol = 1e-05 ; max_tol = 1 ; no. solid lumps made = 0 ; no. sheet lumps made = 1 ; no. unshared loops = 1 ; no. unshared edges = 9 ;; #[entity 6 1] |
[Top]
body | body |
desired_gap_tightness | double |
acis-opts | acis-options |
Description
This extension attempts
to tighten gaps in the BODY that are bigger than the supplied desired_gap_tightness value.
For more details refer to the documentation for api_tighten_gaps.
; hh:tighten-gaps ; Tightens gaps in a BODY that are bigger than ; supplied desired_gap_tightness value. ; ; Set the gap tightness value that a user ; desires in the body (define desired_gap_tightness 0.01) ;; desired_gap_tightness ; ; Load a file in which the user intends to have ; the gaps tightened within the user's ; desired_gap_tightness value. (part:load "xxx.sat") ;; (#[entity 1 1]) ; ; Define the user supplied entity whose gaps are ; to be tightened, as body. (define body (list-ref (part:entities) 0)) ;; body ; ; Call hh:tighten-gaps with desired_gap_tightness ; to close gaps in the user supplied body within ; user's desired_gap_tightness value. (hh:tighten-gaps body desired_gap_tightness) ;; #[entity 1 1] ; ; Set the check_level to 30 (option:set 'check_level 30) ;; 20 ; ; Check the body after tightening gaps (entity:check body) ;; checked: ;; 1 lumps ;; 1 shells ;; 0 wires ;; 6 faces ;; 6 loops ;; 24 coedges ;; 12 edges ;; 8 vertices ;; () |
[Top]
body | body |
acis-opts | acis-options |
; hh:terminate-body-for-healing ; Attach healing attributes ; Load a file containing a bad part (part:load "heal1.sat") ;; (#[entity 2 1] #[entity 3 1] #[entity 4 1] ;; #[entity 5 1]) ; Zoom the view in order to see the part (zoom-all) ;; #[view 1076700200] ; Combine the faces into a body (define body1 (hh:combine (list (entity 2) (entity 3) (entity 4) (entity 5)))) ;; body1 (hh:autoheal body1) ; ... (autoheal results) ;; (#[entity 6 1] 70 100) (hh:terminate-body-for-healing body1) ;; #[entity 6 1] |
[Top]
body | body |
acis-opts | acis-options |
; hh:wrapup ; Load a file containing a bad part (part:load "heal1.sat") ;; (#[entity 2 1] #[entity 3 1] ;; #[entity 4 1] #[entity 5 1]) ; Zoom the view in order to see the part (zoom-all) ;; #[view 5183062] ; Combine the faces into a body (define body1 (hh:combine (part:entities))) ;; body1 ; Heal the Body (hh:wrapup body1) ;; #[entity 6 1] |
[Top]
© 1989-2007 Spatial Corp., a Dassault Systèmes company. All rights reserved.