Component:Healing
From DocR21
The Healing Component (HEAL) contains API functions that can be used to fix models imported from other modeling systems into ACIS in order to make them usable in ACIS. When geometry is created in some other modeling system and translated into an ACIS model, such a model may be imprecise due to the inherent limitations of their parent systems, or due to limitations of data transfer through neutral file formats. This leads to problems such as gaps between entities, and the absence of connectivity information (Topology).
The Healing Component (HEAL) contains API functions to detect and correct such problems. 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 (for example, 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.
| Operation | Description |
|---|---|
| Stitching | This functionality provides a way to stitch or sew separate faces together to make a sheet or manifold solid body that is topologically complete. |
| Geometry Simplification | The incoming models often contain surfaces that appear analytic when displayed on a screen, but are actually represented as splines. In the geometry simplification phase, such spline surfaces are converted to corresponding analytic forms (for example, plane, cone, torus, or sphere) wherever possible. Geometry simplification results in a reduction of data size and speed improvements in geometric operations. |
| Tightening Gaps | This phase (also called Geometry Building phase) tightens the gaps (inaccuracies) in the input models by building geometry as necessary. In this phase, a series of geometric operations are performed to improve the precision of face, edge, and vertex data. Geometry building essentially removes the gaps between adjacent surfaces by recomputing intersections. |
C++ APIs
The healing workflow consists of calls to the following APIs:
Error Codes
Upon failure of an Healing API, error codes will be returned that explain the failure and suggest possible actions for correction.
Scheme Extensions
The Scheme extensions related to healing workflow:
Refer to the complete list of all Scheme extensions related to the Healing component.
The features of the Healing Component include:
- 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
- Provides functionality to tighten gaps in the model to a desired tightness
- Supports tightening of analytic and spline smooth edges
- Supports edges that could not be tightened after being converted into tolerant edges
General Topics
Options
Journaling
Journaling is available for Healing through the standard ACIS options journaling mechanism.
Versioning
- Main article: Versioning
Versioning is available for Healing through the standard ACIS options versioning mechanism.
Error Codes
Upon failure of an Healing API, error codes will be returned that explain the failure and suggest possible actions for correction.
Limitations
- Main article: Limitations (healing)
Imperfections in ACIS models can arise due to various reasons. Many of these occur during conversion of legacy surface/solid data to ACIS format. It is not feasible to have a single healing algorithm that will handle all types of imperfections, but the ACIS healer has incorporated solutions to the most frequently occurring problems.
