Healing
is an extremely complex process. The general steps to healing are:
-
Preprocess - trim overhanging surfaces and clean
topology (remove small curves and surfaces).
-
Simplify - converts splines to analytic representations,
if possible.
-
Stitch - geometry cleanup and and stitching loose
surfaces together to form bodies.
-
Geometry Build - repairing and building geometry
to correct gaps in the model.
-
Post-Process - calculating pcurves and further repairing
bad geometry.
-
Make Tolerant Curves & Vertices - a last optional
step that allows special handling of unhealed entities for booleans - allowing
inaccurate geometry to be tolerated.
Autohealing makes these steps automatic with
the following command:
Healer Autoheal Body <id_range> [rebuild]
[keep] [maketolerant] [logfile ['logfilename'] [display]]
The rebuild option unhooks each surface,
heals it individually, then stitches all the surfaces back together and
heals again. In some cases this can more effectively fixup the body, although
it is much more computationally intensive and is not recommended unless
normal healing is unsuccessful.
The keep option will retain the original
body, putting the resulting healed body in a new body.
The maketolerant option will make the
edges tolerant if ACIS is unable to heal them. This can result in
successful booleans even if the body cannot be fully healed - ACIS can
then sometimes "tolerate" the bad geomety. Note that the healer
analyze command will still show these curves as "bad", even though
they are tolerant. The validate
geometry commands however take this into consideration.
The output from the autoheal command can be written
to a file using the logfile option; the default file name is autoheal.log.
The display option works as before, displaying the results in a
window in the GUI version of CUBIT. |