| OCR Text |
Show CHAPTER 3 DIRECT OBJECT AND ITERATIVE CONSTRUCTIONS In this chapter, we will introduce the concept of a direct object constructor to solv for simple subgraphs which have closed form solutions. However, not in all cases can cyclic dependencies be broken by direct geometric constructions. In these cases so-called iterativ constructors are used. In the next chapter, a hybrid graph-constructive algorithm which combines these two kinds of constructors is developed for evaluating the constraint graphs to find a valid geometric model. 3.1 Direct Object Constructors A direct object constructor is applied when there is a definitive way to construct a geometric object from other, already constructed objects. In other words, the geometric object in question becomes fully constrained with respect to its related objects. For example, if we know the positions of two circles, we will be able to determine the position of the line which is tangent to both of them. We will explain the concept in terms of the nodes and edges in the constraint network. In general, when all but one node attached to an edge become fully constrained, we say that the edge is ready to fire and call it the firing edge. It is depicted as a bold edge with an arrow pointing to the not yet fully constrained node, as show in figure 3.1 (a). Furthermore, a node becomes ready to fire, when the sum of the valencies of the connected edges that are ready to fire is equal to the available degrees of freedom of the node (DO F awned - DO F consumed). We call this node the firing node (depicted as a bold-line box as show in figure 3.1 (b)). Depending on the types of the the firing edges, different object constructors may be used to construct the firing node. For example, if the firing node is a 2-D point A and the firing |