rchampe@hubcap.clemson.edu (Richard Champeaux) (12/10/89)
As many of you might have noticed, I have yet to send PLT: to
comp.binaries.amiga. This is due partly to procrastination, and
partly to the fact that a minor bug was pointed out to me.
The text sizes were screwed up when scaling was on. There were a couple
of other minor bugs as well. They are all fixed now.
At the request of a user, I have also added the arc and circle commands
AA, AR, and CI. These were added to make PLT: compatable with PRONET.
The result is that there is now a PLT: v1.3a. I will send it to everyone
whose address I have, and I will post it to comp.binaries.amiga before
I log off.
I might have misplaced the addresses of some of the people whom I've sent
PLT: since my last post. If you don't get a copy, send me some mail
and I'll send it to you.
I'll be going home for christmas on Dec 14, and I'll be back on Jan 7.
There's a good chance that I'll have network access, and I will remote
login to check my mail.
For those who don't know what PLT: is, below is a section from the document
file.
Rich Champeaux (rchampe@hubcap.clemson.edu)
---------------------------------------------------------------------------
PLT:
Version 1.3a
December 9, 1989
Rich Champeaux
Jim Miller
NOTICE: PLT: is not in the public domain. We reserve all rights to both the
executable and the source. PLT: may not be sold without expressed,
written permission of either Rich Champeaux or Jim Miller. PLT: is
however, freely distributable provided that this file accompanies it.
PLT: is a file-handler that emulates a plotter by accepting HP-GL commands,
creating a raster image, and then dumping it to any Preferences supported
graphics printer. The current resolution set with preferences is used,
allowing PLT: to make full use of a printer's capability.
PLT: accepts virtually all of the standard HP-GL commands, including scaling
and text. The commands that were not implemented are those which are
generally contained in an extended graphics cartridge, such as: circles,
arcs, filled regions, etc.
PLT: Features:
- Lines are stored in a tree/linked list structure untill the handler is
closed or the command AF or PG is recieved. The plot is then rasterized
and dumped to the printer in strips. This allows plots to be printed
with resolutions and page sizes for which a raster for the entire page
would not fit in memory.
- Pens can be assigned colors and thicknesses. The pen colors are defined
by RGB values, and thicknesses are defined in pixel widths. The pens
can be defined in an environment variable or when the handler is opened.
The number of bit planes used for the raster depends on the number of
different colors requested, not the number of pens. Therefore, 7 black
pens and 5 red pens of various thicknesses, would only take 2 bit planes.
- PLT: supports variable paper sizes. It knows the standard paper sizes,
A, B, C, D, and E, and can also use the paper size defined by the limits
fields of Preference's Graphic 2 screen. The entire width of any dot
matrix printer supported by Preferences can be used, including wide
carriage printers. If the requested page size is too large to be
printed, a requester is displayed, giving the option to reduce the size
of the plot (keeping the aspect ratio) to the maximum size of the
printer. The plot can also be reduced to the page size specified by
Preferences.
- PLT: has a preview mode that displays the plot on the screen. The
aspect ratio of the requested page is preserved. This allows the plot
to be displayed on the screen the way it will appear on paper.
A 640 x 400 screen is used to provide maximum resolution.
- PLT: v1.3 supports multiple, disk-resident fonts. The fonts can be
changed or created by the user. An included program, 'cf', is used to
convert the fonts from a text representation of the vectors to a
format usable by PLT:. Fonts are loaded in only when needed, and
fonts can be changed durring a plot with the CS, CA, SS, and SA HP-GL
commands. A standard ascii font and a math-greek font are included
with this release.
- PLT: can also be used by programs that assume that a plotter is
connected to the serial port by using the CMD command. For example:
CMD serial.device PLT:
- PLT: has two memory usage modes that it can run in: memory-squander and
memory-conserve. The memory-squander mode sits a tree structure on top
of the linked list to speed up inserts. The memory-conserve mode uses
only a linked list. The memory-squander mode is much faster than the
memory-conserve mode since it's insert time is O(log2(n)), but it
requires twice as much memory per line. The memory-conserve mode's
insert time is O(n), and becomes unbearably slow as the number of lines
becomes greater than about 8000. The memory-conserve mode does, however,
allow twice as many lines to be plotted. PLT: v1.3 defaults to the
memory-squander mode and will automatically remove the tree and switch to
the memory-conserve mode when availble memory is less than 2k.
-----------------------------------------------------------------------------
Rich Champeaux (rchampe@hubcap.clemson.edu)