Assembly Modeling Overview


ACIS Assembly Modeling fulfills two requirements:

Topics include:

Assembly Modeling Functionality

ACIS Assembly Modeling provides the following basic assembly modeling operations:

Construction
Interface functions construct assembly models, part models, and model references. (For more details, refer to the section Basic Assembly Modeling Concepts.)

Manipulation
Interface functions modify existing assembly models by, for example, removing a model reference from an assembly or by changing its location or orientation within the assembly by changing its associated transform.

Queries
Interface functions query an existing assembly structure. A typical application queries an assembly for its components, and then queries each component for its contents and properties.

Properties
ACIS Assembly Modeling allows your applications to modify specific components of an assembly by adding properties such as color, suppression, and transparency. As in part modeling, properties are specified by ACIS attributes, so that application-specific properties may also be applied.

Persistence
ACIS Assembly Modeling provides interface functions to read and write assemblies to disk using the ASAT format.

Integration with Application Part Management

ACIS Assembly Modeling is designed to work with your application code which manages the contents of models (that is, customer part or document objects). Your applications need not use the ACIS’ Part Management component (SPApart) in order to take advantage of ACIS Assembly Modeling.

Interfaces

ACIS Assembly Modeling has two interface sectors which are used by client code, a functional interface and a derivation interface. The functional interface is for using assembly modeling functionality. The derivation interface is for customizing ACIS Assembly Modeling to utilize your application's part and file management systems.

Functional Interface

The standard interface for client code to work with ACIS assemblies is through a set of asmi_* functions. These functions are analogous to ACIS api_* functions in that they obey a no-throw contract (that is, they guarantee that they will not throw an exception) and return an outcome. Yet, these functions differ from api_* functions in that they are not necessarily associated with a particular history stream (they do not automatically open a new bulletin board); hence, they do not take ACIS ENTITY objects as arguments. The following naming principles apply to asmi functions:

Derivation Interface

As discussed above, ACIS Assembly Modeling is designed to work with application code for managing the content of models. ACIS Assembly Modeling provides a set of abstract base classes (that is, interface classes) from which you sub-class in order to wrap your document management system. The primary base class in this interface is asm_model_entity_mgr, which is the interface for binding an application document object to an asm_model object in assembly modeling. (Refer to the section Entity Managers in Assembly Modeling for a detailed discussion of entity managers in assembly modeling.) Default implementations of these derived classes are provided for those who are only using assembly modeling for interoperability purposes (that is, ASAT I/O) or are using the ACIS Part Management component. (Refer to the section Assembly Modeling Save and Restore for more information about the ASAT file format.)


Related topics:

Assembly Modeling vs Part Modeling
Basic Concepts in Assembly Modeling
Assembly Modeling Tutorial
Properties in Assembly Modeling
Assembly Modeling Save and Restore
Standard Workflows in Assembly Modeling
Assembly Modeling Limitations

[Top]