next up previous contents index
Next: The variable _draw3 and Up: 3D Graphics Control Functions Previous: Displaying the Gnomon   Contents   Index

Plotting the Display List

The only way that the display list can be plotted is by an invocation of the function draw3. The user may control when this function gets called. To have a new plot appear totally under user control, set _draw3 to 0 (i. e., execute set_draw3_(0)) and then call draw3 only when you want the plot to appear. To have a plot appear automatically after each plot command is given, _draw3 should be set to 1 and the idler should be set to some function which calls draw3. The details are in ``The variable _draw3 and the idler'' on page [*].

Calling Sequence
...
  
[lims = ] draw3 ( [called_as_idler = <val>]) 
limits (lims [0], lims [1], lims [2], lims [3])

Description
The function draw3 traverses the display list and executes each function on the list with the list of arguments supplied. Assuming that the list is not empty, this means that the frame specified by this list will be displayed. If the parameter called_as_idler is present and is nonzero, then a fma (frame advance) call will be made first, meaning that the current display will be erased before the new one is plotted. Otherwise the new display will appear on top of the old.

draw3 always attempts to return a list of four items [xmin, xmax, ymin, ymax] which give the maximum and minimum of the x and y coordinates actually plotted to the PyGist window. Calling the limits function with these four values as limits will scale the graph properly. One could also perform computations with these limits (for example, to force x and y to the same scale, or to shrink the graph a little to force it well inside the borders of the window). If you like the way your graphs look, then there is no reason to deal with these numbers.

We apologize for this messy kludge; we have encountered timing problems and other difficulties with the Gist limits calculating process which we have not been able to solve except by computing our own limits.


next up previous contents index
Next: The variable _draw3 and Up: 3D Graphics Control Functions Previous: Displaying the Gnomon   Contents   Index
Michiel Jan Laurens de Hoon 2003-04-19