Graphs and the Evaluation Mechanism

Dynamic blocks use a realization of graph theory to define and evaluate object dependencies. By using the graph evaluation classes, other applications also can create custom graphs and associate them with objects in an AutoCAD database.

ObjectARX graphs are based on the directed acyclic graph (DAG) model. This model indicates how the graph's nodes can be traversed and evaluated. Directed means that nodes are evaluated in a specific order, or direction. Often, this direction may not be determined until the graph is evaluated. Acyclic means that the traversal path cannot visit the same node twice. For instance, a path such as A->B->C->A is not allowed.

The DAG model is a powerful system for evaluating the effects of change in a system of dependent relationships. Although the graph itself does not support a constraint system, in many cases constraints can be represented by defining additional nodes and dependencies.