PlotGraphDoc.tioga
Christian LeCocq, October 23, 1986 12:13:19 pm PDT
PLOTGRAPH : AN OSCILLOSCOPE DISPLAY
DATOOLS 6.1 — FOR INTERNAL XEROX USE ONLY
PlotGraph: An Oscilloscope Display
An output display for time simulators
Christian Le Cocq
© Copyright 1986 Xerox Corporation. All rights reserved.
Abstract: PlotGraph is a display package which provides the ability to show a collection of axis (i.e. display frames) layed out bottom up. Each axis is the local reference for one or more graphs (i.e. visualization of a set of data). The graphs can be displayed as curves, or the values can be written along the horizontal direction either horizontally or vertically.
Created by: The Will of Rosemary's Users, who was obeyed by Rick Barth and Christian Le Cocq.
Maintained by: Christian Le Cocq <LeCocq.PA>
Keywords: Viewers, Imager, InterPress, oscilloscope, Rosemary.
XEROX  Xerox Corporation
   Palo Alto Research Center
   3333 Coyote Hill Road
   Palo Alto, California 94304

For Internal Xerox Use Only
General Ideas
Idea #1: This is intended to be for the user the simulated oscilloscope of the simulated circuit.
Idea #2: This should not be too far away from the other graphic package available: Graphs.
Idea #3: It should be simple, outside and inside.
Client Interface
What and Where ?
Only one interface: PlotGraph.mesa. It can be found in your favorite directory if you bringover:
[DATools]<DATools6.1>Top>PlotGraph.df
The relation between PlotGraph and the client is done through an enumeration with call backs to avoid the duplication of the data.
A sample program, PlotGraphTestImpl, can be useful to see quickly what PlotGraph can do for you.
User Interface
Static behavior
The display is scaled in the available place in the viewer, and rescaled each time this place is changed. It will draw everything in black on the black and white screen and use various colors on the color screen, as in the InterPress master.
User Modifications of the display
The User can change the picture by clicking the scrollbars or the menu buttons or by clicking the mouse inside the viewer.
The Horizontal scrollbar translates the x origins of each axis of an equal proportion of their width. If the application is wise enough to keep all axis width equal, the same translation is applied to all axis. The Vertical scrollbar has the same effect on each y origin of each axis.
The menu has the following buttons :
Reset : resets to a full display.
Mag : switches in or out the magnifier, a zoom feature (the 2nd time base of the oscillo)
Grat : draws a scale along x and rounds the x scale to be a "decimal round" number.
Shot : takes a picture of the screen and stores it in ///Temp/PlotGraph/**name**.interpress
Frozen: switches on or off the interactive refresh of the screen by the client program.
sizeX: LEFT click double, RIGHT click divide by two the x scale of the normal display.
MagSizeX: Id for the x scale of the magnifier.
sizeY: Id for the y scale of normal and magnifier displays.
The left click of the mouse inside the viewer :
CTRL & SHIFT moves the clicked axis over the selected one
CTRL X    exchanges the selected axis and the clicked one
CTRL Z    moves the selected axis over the clicked one
CTRL    deletes the clicked axis
SHIFT    writes the client coordinates of this point at this location
     select this axis
The middle click of the mouse inside the viewer :
SHIFT    copies the clicked axis over the selected one
     refresh the screen
The left click of the mouse inside the viewer :
     translate the origin of the magnifier at this new location
CTRL D    deletes the selection