12
|
1 When an object change it's size, position, or components inside it,
|
|
2 other objects overlaid with the object in old or new positions should
|
|
3 be re-drawed. The place that the object is resident in old or new
|
|
4 position should be cleared before re-drawing. We need a system
|
|
5 to determine and track effected by the change of an object.
|
|
6
|
|
7 The graphics are grouped into groups in tree-hierachy. One group
|
|
8 can be part of another group. When a group's transformation matrix
|
|
9 is chagned, all child groups should be affected. All it's members
|
|
10 should also be re-drawed. All members of a group been changed are
|
|
11 linked into update list in their order. The one more close to
|
|
12 tree root is more earier in the list.
|
|
13
|
|
14 Transformations can only apply to groups. A tree of coord_t is
|
|
15 maintained to model relationships of groups. Coord_t is coordination,
|
|
16 a transfromation from user space to upper level's space or devcie space.
|
|
17
|
|
18 coord_t must know graphics in respective group. Once transformation
|
|
19 matrix of a coord_t object changed, it can ask members to
|
|
20 re-drawed them-self.
|
|
21
|
|
22 Changes of the transformation of a coord_t should be propagated to
|
|
23 child coord_t objects/groups.
|
|
24
|