240 lines
12 KiB
Plaintext
240 lines
12 KiB
Plaintext
|
|
HCADgs
|
|
|
|
Copywrite (c) 1990, Joseph A. Huwaldt
|
|
Documentation for Version 1.2 5/18/90
|
|
|
|
|
|
HCADgs is a shareware 3-D computer aided design program. It is useful in
|
|
viewing, rotating, and scaling 3-D objects. With HCADgs you can linedraw,
|
|
rotate, scale and translate objects in three dimensions. With the perspective
|
|
feature you can view objects as they appear in real life (larger nearer to you
|
|
and smaller farther away). This is opposed to the standard isometric views
|
|
where distant objects appear the same size as nearer objects. You can print 3-D
|
|
objects to any printer that your Apple IIgs supports (that you have drivers
|
|
for), including the Apple Imagewriter II, Apple LaserWriter, and standard Epson
|
|
printers.
|
|
|
|
Please note that HCADgs is _Shareware_ and as such is NOT public domain or
|
|
freeware. Details of the shareware agreement can be found below.
|
|
|
|
|
|
|
|
==>History
|
|
|
|
HCADgs was originally conceived as HSKETCH on an Apple IIc in the heart of
|
|
Nebraska in 1984 or 85 (I don't remember for sure). This 2-D high-res drawing
|
|
program won the National Ak-Sar-Ben (Nebraska spelled backward) programming
|
|
contest.
|
|
After winning the contest I continued to modify the program (of course).
|
|
Somewhere along the line the name changed to HCAD. HCAD was a 2-D drafting
|
|
program for the Apple IIc/IIe enhanced that had a drawing area of 512x184 pixels
|
|
where 256x92 were visible at any one time. It sported a joystick or keyboard
|
|
drawing environment, windows (of sorts), a "choose from list" file selection,
|
|
and file packing.
|
|
Now several years went by as I fought my way through college (Aerospace
|
|
Engineering, University of Kansas, Lawrence Kansas). During this time I got my
|
|
Apple IIgs and learned to program in TML BASIC. Well one thing led to another
|
|
and now you have a copy of what I have always dreamed of. A cheap 3-D drawing
|
|
program for the Apple II. HCADgs.
|
|
|
|
Version 1.2: This version repaired many bugs that were found in 1.0 soon
|
|
after its initial release. The general flow and features of the program were
|
|
not altered.
|
|
|
|
Future versions (if anyone sends me the shareware fee) will have the
|
|
following improvements:
|
|
|
|
Definately: The ability to draw with the mouse as opposed to using the
|
|
keyboard (if anyone wants, I could make a joystick version too
|
|
I suppose). Multiple objects that can be moved in relation to
|
|
one another. Rulers, gridlines, etc for measuring. These
|
|
things are relatively easy.
|
|
|
|
Probably: Hidden line elimination, shading and reflection (If my plans
|
|
for hidden line elimination work out, then the others will be
|
|
simple). A 320 graphic mode version that uses shades of any
|
|
hue that you wish for shading. Solid modeling. Fee form
|
|
curves, circles, cylinders, spheres, cones, etc.
|
|
|
|
Wish List: High speed animated rotations (for now you will just have to
|
|
purchase a Transwarp GS for that).
|
|
|
|
|
|
|
|
==>Using HCADgs
|
|
|
|
HCADgs is not difficult to use. It sports the standard graphic desktop
|
|
interface complete with pull down menus and all your favorite desk accessories.
|
|
When the program is initially opened it shows a blank screen with the x and y
|
|
coordinate axes visible. The view angle is Rx = 0, Ry = 0, and Rz = 0 degrees.
|
|
The y axis is defined as positive downward, x is positive to the right, and z is
|
|
positive into the screen. If you hold down the Apple (Command/Propeller) key
|
|
and press 4 you will move the drawing cursor (a small red dot) to the left
|
|
(negative x) direction 1 unit. Whenever you use one of the drawing commands the
|
|
x,y,z position of the cursor will appear in the upper left hand area of the
|
|
drawing page. The drawing keys make use of the numeric keypad for drawing as
|
|
follows:
|
|
|
|
-z (7) -y (8) +z (9)
|
|
|
|
-x (4) +x (6)
|
|
|
|
+Ry (1) +y (2) +Rz (3)_
|
|
|
|
+Rx (0)
|
|
|
|
Just play with the direction keys (make sure you hold down the Apple key)
|
|
and learn how the drawing cursor moves. Press Apple-B to begin a line at some
|
|
x,y,z coordinate (initially the beginning will be set to 0,0,0). Move the
|
|
cursor to the 3-D coordinate for the end of the line and press Apple-D. The
|
|
line will then be drawn between these two points.
|
|
You may use Cut (Apple-X) to remove the last drawn line and you may use
|
|
Paste (Apple-V) to replace the last cut line. You may cut many lines in
|
|
sequence but you will only be able to paste back the last cut line! Remember
|
|
that. This is rather limited editing so look forward to better editing features
|
|
on future versions.
|
|
You may rotate the object that you are drawing by pressing Apple-R. You
|
|
will be asked to input the rotation angles in degrees. For example you could
|
|
enter in the edit boxes 30 30 30. This will rotate the object
|
|
(positively in a right handed system) 30 degrees about the x, y, and z axes all
|
|
at once. This is a commonly used setting for view angle. With the view set to
|
|
this angle you will still be able to draw, but now Apple-4 will move the cursor
|
|
diagonally upward and to the left. This is because you have rotated the xy
|
|
plane that the cursor used to move in by 30 degrees. This often leads to mass
|
|
confusion when drawing but you get used to it after a while. I recommend that
|
|
you follow the x,y,z coordinate information in the corner of the screen to keep
|
|
track of where you are. It is even kind of fun to learn to move the cursor
|
|
downward to the right when you press the negative y direction key. :)
|
|
|
|
|
|
==>Menu Explanations
|
|
|
|
=>Edit
|
|
Currently the only options available under the edit menu are CUT and PASTE.
|
|
You may Cut the last drawn line and remove it from the screen. If you wish to
|
|
remove a whole series of lines you can repeat the Cut procedure and remove every
|
|
last drawn line until there are no lines left. Beware: You may Cut as many
|
|
lines as you wish, BUT you may only paste back the last drawn line!
|
|
|
|
=>Scale
|
|
Here you may enter the scale factor. When the program is initially run the
|
|
scale factor is set to 1. That is, one unit of length equals one pixel on the
|
|
screen. If you move the cursor 1 space to the right it will move one pixel to
|
|
the right. If the scale factor is set to 2 it will move 2 pixels to the right,
|
|
etc. You may set the scale factor to any value from 1 to 500 or so. That gets
|
|
pretty outlandish though since at most all you would ever see on the screen is 1
|
|
straight line. Usually you will set the scale factor to something below 50.
|
|
|
|
=>Rotation
|
|
Under the rotation menu you will be able to enter in the angles by which
|
|
you view the object. These angles are referenced to the original starting
|
|
coordinates of the program. All angles are based on a right handed system (ie:
|
|
If you hold your right hand with thumb pointing positively down the axis of
|
|
interest, your fingers will curl around the axis in the direction of the
|
|
rotation). If you are initially looking at an object with rotation angles
|
|
(0,0,0), and you enter a rotation angle of (0,0,30) the object should rotate
|
|
around clockwise on the screen.
|
|
|
|
=>Draw
|
|
This menu is where the keyboard commands for moving the cursor are found.
|
|
The use of the numeric keypad for moving the cursor is explained above. You may
|
|
also use the Goto option. Here you may enter the 3-D coordinates that you wish
|
|
to move the drawing cursor to. With this you may jump around in a drawing
|
|
rapidly if you know the relative 3-D coordinates. This is often the case if
|
|
working from 2-D engineering figures. You may use Begin Line... to set the
|
|
beginning of a line that you wish to draw, then move to the end of the line you
|
|
wish to draw and choose Draw Line... This will draw in a line in 3 dimensions.
|
|
|
|
=>HCAD
|
|
This is a general all purpose menu. A goodies menu if you wish. Here you
|
|
may move the object around in 3-D space with relation to the origin (Translate)
|
|
or you may move the origin around in space relative to the screen (Move origin).
|
|
You may also turn on perspective mode here. Perspective mode will cause parts of
|
|
objects that are closer to you to appear larger and parts of objects that are
|
|
further away will appear smaller. This does increase calculation and drawing
|
|
time though, so you may not want to have this option turned on at all times. You
|
|
will be able to draw with perspective mode in operation though. Finally, you
|
|
may turn on or shut off the axes. This will either show or remove the little
|
|
3-D axes that appear in the center of your drawing area when you initially start
|
|
the program.
|
|
|
|
|
|
|
|
|
|
==>Need Technical Help?
|
|
|
|
If you encounter any problems with HCADgs or if you have any comments or
|
|
questions on the operation of HCADgs, then please feel free to contact me. You
|
|
may write me at:
|
|
Joseph A. Huwaldt
|
|
314 BB Bristol Terrace
|
|
Lawrence, KS 66044
|
|
|
|
I may be reached on America Online as "JA Huwaldt" or you may reach me at a
|
|
BBS that I frequent: Sherwoods Forest -- (913) 842-5025. On Sherwoods I am
|
|
known as "Benu". This is the first place that you will find my latest greatest
|
|
programming feats as well.
|
|
|
|
HCADgs is written entirely in TML BASIC. This has often turned out to be a
|
|
feat in itself. However, it turns out that TML is great for the number
|
|
crunching needed for this program. (Hint: Don't use TML BASIC if you are going
|
|
to be manipulating a lot of string variables. It is a mess.) The source code
|
|
at this point is about 30k long and contains enumerous lines.
|
|
If you have questions about programming in TML BASIC or if you have
|
|
questions about how I managed the graphics, then please get ahold of me. I
|
|
would be pleased to help a fellow programmer if I could. If I can't help you
|
|
directly I may be able to direct you to a source that could help you.
|
|
|
|
|
|
Apple, ImageWriter II & LaserWriter are trademarks of Apple Computer Inc.
|
|
TML BASIC is a registered trademark of TML Systems Inc.
|
|
|
|
|
|
|
|
==>ShareWare Information:
|
|
|
|
HCADgs is a shareware program. You may use this program on a trial basis
|
|
for 7 days. If, after seven days, you are not pleased with HCADgs, then please
|
|
discontinue using it. However, you may upload it to any BBS or information
|
|
system that you please and you may give as many copies to friends as you wish.
|
|
In fact I encourage you to do this in order that others may enjoy this program.
|
|
If you are indeed pleased with HCADgs and would like to see more programs
|
|
developed for the Apple II series (including more engineering graphics programs)
|
|
then please send me the small fee that I request.
|
|
|
|
Here's the deal:
|
|
|
|
$10 -- You will become a registered HCADgs user and will receive the
|
|
latest version of HCADgs (and any other useful programs that I
|
|
just happen to have hanging around). And you will receive the
|
|
next version of HCADgs free! You will also be free to own any
|
|
future versions of HCADgs that you ever encounter.
|
|
|
|
$5 -- You will become a registered HCADgs user and will receive the
|
|
latest version of HCADgs (and any other useful programs that I
|
|
just happen to have hanging around).
|
|
|
|
In both cases you will be supporting the development of useful software for
|
|
the Apple II series. And if you pay the shareware fee, my family won't complain
|
|
so bad that I spend to much time programming and not enough time working at a
|
|
"real" job. :)
|
|
|
|
Please send your shareware fee to:
|
|
|
|
Joseph A. Huwaldt
|
|
314 BB Bristol Terrace
|
|
Lawrence, KS 66044
|
|
|
|
IMPORTANT: Please include your real name, full address, and the program and
|
|
version number that you are registering (I have several). I will then send you
|
|
the latest version of HCADgs as soon as possible.
|
|
|
|
Thank You for your support.
|
|
|
|
Ad Astra,
|
|
|
|
|
|
Joseph A. Huwaldt
|
|
|