Input:

  • Top Box (Root)

Box Properties:

  • Width
  • Height
  • Branch Style (Self)
  • Parent Box (null for the root)
  • Children (0 to n children)

Rules

  • Three classes of branch styles that can exist under a single parent
    • Peer assistant
    • Standard assistant
    • Regular subordinate
  • All regular subordinate must have the same branch style

Order of compaction:
1. Root forms a polygon (1)
2. Merge Peer Assistants with root (1+2)
3. Merge Standard Assistants (1+2+3)
4. Merge Regular subordinates

Branch Style Rules:
1. Tree Style - Align vertically, Merge Horz to the right and then merge Vert up to parent
2. One column Style - Align horizontally, Merge Vert to the top and then merge Vert to parent
3. Multi column Style - Align vertically by rows, Merge Vert to the tops of each row and then merge vert to parent

Consider: Horizontal placement under parent