Healing Component
List of: Components
Subjects: Healing
Contents: Healing

The Healing Component (HEAL), in the heal directory, fixes solid models--usually imported from other modeling systems into ACIS--in which tolerance problems affect how ACIS interprets the model. HEAL is designed to detect and correct accuracy problems in the geometry of an ACIS model.

It is possible to create ACIS models that are not precise enough for ACIS to process. This most often happens when geometry is created in some other modeling system and translated into an ACIS model. Such models may be imprecise due to the inherent numerical limitations of their parent systems, or due to limitations of data transfer through neutral file formats. This imprecision can also result when an ACIS model is created at a different tolerance from the current tolerance settings.

This imprecision leads to problems such as geometric errors in entities, gaps between entities, and the absence of connectivity information (topology). Since ACIS is a high precision modeler, it expects all entities to satisfy stringent data integrity checks for the proper functioning of its algorithms. Therefore, if such imprecise models must be processed by an ACIS based system, a "healer" for such models is necessary to establish the desired precision and accuracy.

The Healing Component (HEAL) is designed to detect and correct accuracy problems in the geometry of an ACIS model. HEAL is intended as a foundation on which an application can build a complete "healing strategy." The HEAL functionality is available through both a C++ interface (APIs and classes) and a Scheme interface (Scheme extensions).

HEAL is not a translator from another modeling system into ACIS--the model must already exist in ACIS format (e.g., in a SAT file) before being healed. HEAL may not be able to correct all of the problems that may exist in a model, but it will detect and correct a large percentage of them.

HEAL uses aggregate attributes attached to the body and individual attributes attached to the individual entities in the body to control the healing process. These attributes are used to store healing options, tolerances, and results. The attributes are implemented using the ACIS attribute mechanism, with C++ classes derived from the ACIS base attribute class, ATTRIB.

The features of HEAL include:

Analyzes the input models and suggests appropriate tolerances for healing operations
Provides user-controllable tolerances for efficient healing
Simplifies geometry by converting spline data to analytic data wherever possible
Stitches faces together in the absence of connectivity (topology) information
Builds geometry to correct the gaps in the model
Supports healing of analytic and spline tangent junctions
Uses attributes attached to the body to store the information and results for the various healing phases, allowing the HEAL changes of each phase to be reviewed
Provides an "automatic" option for each of the various healing phases, including an autoheal operation that performs all healing operations automatically
Allows analyzing individual entities to determine the errors before performing any healing operations
Allows converting edges that can't be healed into ACIS tolerant edges
PDF/HEAL/01CMP.PDF
HTM/DATA/HEAL/HEAL/01CMP/0000.HTM