Subsections
Quick start
This chapter gives you a brief explanation of how to use
MatrixPro. Only a few of the features will be presented, but it should be
enough to get you started without reading more than a few pages.
Figure 1 shows the main window of MatrixPro.
Figure 1:
The MatrixPro main window.
|
Along the top is the menu bar (Section 5).
Below it on the left is the animator containing VCR-like controls for the visualization:
and below the animator is the toolbar with additional controls (Section 9).
On the right is the structure panel where all the visualizations appear;
these are explained in Sections 7 and 8.
Not shown are context-sensitive popup menus (Section 6).
The functions of the animator buttons (from left to right) are:
- Begin will undo all operations in the history.
- Backward will undo one operation.
- Play will run the animation continuously from the current
position to the end of the scenario.
The button will change to a Stop button that stops the animation.
- Forward will redo one operation.
- End will redo all operations in the current scenario.
The structure panel
The Structures menu contains four submenus for creating various data structures:
- Fundamental data types (FDT)
- These are ``raw'' data types that have no
predefined semantics, for example, binary trees or graphs.
The elements of FDTs are normally keys, though they can also be other FDTs.
- Conceptual data types (CDT)
- These are data structures that have constrained values and
operations defined upon them. For example, binary search trees are constrained
so that values in the left subtree of a node are less than values in right subtree,
and the operations of insert, delete and search are defined upon them.
- Utilities
- These are primarily structures containing keys for use in FDTs and CDTs.
- Datatype with data
- These are pairs of array of keys and commonly used CDT structures.
Multiple data structures can be created in the structure panel;
the panel can be scrolled or resized as needed.
Let us work through an example.
Select Structures/Utilities/Array of Random Keys.
The array will appear in the upper part of the structure panel.
Next, select Structures/Conceptual data types/Binary Search Tree.
An empty BST will appear below the array in the structure panel.
Drag the keys one-by-one from the array of keys and drop each one onto the title bar
of the BST.
While an object is being dragged, a frame appears around it.
The keys are inserted into the correct positions,
according to the definition of a BST (Figure 2).
Figure 2:
Inserting keys into a Binary Search Tree.
|
Instead of dragging keys one by one,
you can drag the entire array of keys (from its title bar)
and drop it onto the title bar of the tree. All the keys in the
array will be inserted one by one into the binary search tree.
Now you can step through the
animation by clicking the Backward and Forward icons
of the animator;
clicking Begin will start the animation from the beginning
and clicking Play will run it without stopping.
Move the mouse over a node until the node label is
highlighted (e.g. turns red). Press the right mouse button and
select Delete from pop-up menu. The node will be deleted from
the tree according to the definition of BSTs. Alternatively, move the
mouse over a node until the node background is highlighted
(e.g. turns blue) and select Delete; the subtree rooted at that
node is deleted.
In the next section, we will desribe in detail how to interact
with data structures.