home *** CD-ROM | disk | FTP | other *** search
/ Dave Lowe: Magazine Progs Etc / Lowe_MagazineProgsEtc.adf / mCAD / mCAD.DOC < prev    next >
Encoding:
Text File  |  1988-12-30  |  19.4 KB  |  454 lines

  1. mCAD Version 1.2.2     3/6/87   Tim Mooney
  2. ­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­
  3.  
  4.    This disk is freely distributable.  Give it (do NOT sell it)
  5. to someone you like.
  6. ---------------------------------------------------------------------
  7.    This is version 1.2.2 of mCAD, a shareware object-oriented drawing
  8. program.  If you use this program, I'd like you to send a donation of
  9. $20 to (me):
  10.  
  11.    Tim Mooney
  12.    120 Purefoy Rd.
  13.    Chapel Hill NC 27514
  14.  
  15.    Sending the donation renders you a registered user and entitles you to
  16. the source code, updates, and support.  If you want me to send the source,
  17. the latest version, or anything else that requires mailing you a disk,
  18. please send either a blank disk or an additional $5. 
  19.  
  20.    If you use mCAD and DON'T send a donation, you can discharge your
  21. moral obligation to me by writing/creating something USEFUL on the Amiga and
  22. releasing it into the public domain.  If you can't do either of these things
  23. then I feel pretty bad for you and hope your situation improves.
  24.  
  25.                Sincerely,
  26.                Tim Mooney   3/11/87
  27.  
  28. ----------------------------------------------------------------------------
  29.    Contents of this disk:
  30.  
  31.       mCAD        - the executable
  32.  
  33.       mCAD.doc    - documentation
  34.  
  35.       mCAD.rgb    - the color map read by mCAD at startup.  This file is
  36.                   over-written by mCAD when the user selects "Save Colors"
  37.                   from the "Color" menu.
  38.  
  39.       mCAD.txt    - the text font used by mCAD.  This is not an Amiga font;
  40.                   it is not a bit-mapped font, but a line-drawn one.
  41.    
  42.  
  43.       OptoDAC.cad - a sample mCAD file.
  44.  
  45.       part        - a subdirectory of mCAD files useable as parts (or as
  46.         drawings.)
  47.  
  48.       readme      - this file.
  49.  
  50.       sendplt     - a script file to be "Execute"ed.  This is used to send
  51.                   plotter files to a plotter.  This file only works for
  52.                   single-pen plotter files (files created in response to a
  53.                   "..1 Pen" selection from the "Project" menu.)  For
  54.                   multi-pen plotter files, simply copy the file to ser:.
  55.                   
  56.  
  57.       stage.cad   - a sample mCAD file.
  58.  
  59.       voltage_to_frequency.cad
  60.                   - a large sample mCAD file.  This file is near the limit
  61.                   of what a 512K Amiga (running the current version of mCAD
  62.                   and nothing else) can handle.
  63.  
  64. ----------------------------------------------------------------------------
  65.    Since the demo version of mCAD was distributed, I have modified two
  66. programs, which I had previously placed into the public domain, so that they
  67. can write mCAD input files.  The programs are:
  68.  
  69.    mp -   A program which extracts data from a text file and plots it
  70.       on a hires screen.  This is a pretty capable plotting
  71.       program which allows for line and point plots with error
  72.       bars.  Also the program is good at telling the difference
  73.       between text and data; you can, for example, plot the
  74.       content of tables of data in a report. 
  75.       
  76.    tdp -    A program which makes 3-D plots of data with hidden-line
  77.       removal, user-defined view point, etc. 
  78.  
  79. The above two programs are still in the public domain, of course.
  80.  
  81.  
  82. mCAD Version 1.2.2   3/6/87   Tim Mooney
  83. ­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­
  84.  
  85.    mCAD is an object-oriented drawing program.  It has a small set of
  86. graphics primitives (like "line", "box", and "text") and a small set of
  87. editing functions (like "move", "size", and "rotate").  While drawing and
  88. editing, the user can call on other functions to modify the display -- to
  89. zoom in, slide around, superimpose a grid, etc. 
  90.  
  91.    The one powerful feature of mCAD is that primitives can be grouped and
  92. ungrouped; the editing functions operate on groups of (one or more)
  93. primitives.  In these instructions, "group" and "object" will mean either a
  94. single primitive or a group of primitives.
  95.  
  96.    Most (surely all!) Amiga users know how to use the mouse to draw pictures. 
  97. In mCAD, the mouse does mostly what you're accustomed to from programs like
  98. GraphiCraft.  There are three differences:
  99.  
  100.    1) In mCAD, you are called on to SELECT objects for treatment with one of
  101. the editing tools.  Since mCAD can't know for which of two or more
  102. overlapping objects your SELECT click was intended, it runs through a list of
  103. all the possibilities, highlighting each in turn.  In this context, the MENU
  104. button means "No, not that one", the SELECT button means "Yes, the
  105. highlighted object is the one I want". 
  106.  
  107.    2) While drawing a primitive (exception: text) or editing a group
  108. (exception: coloring), mCAD gives you a chance to abort the whole operation. 
  109. In this context, the MENU button means "Abort", the SELECT button means "The
  110. highlighted object is drawn as I want it, make it permanent."
  111.  
  112.    3) Certain editing functions, "Size" for example, require additional
  113. information and indicate this by drawing a highlighted object.  You are asked
  114. to click on (SELECT button) e. g., one corner of a box. 
  115.  
  116.    So, generally, when the mouse buttons don't have their Intuition meanings,
  117. the SELECT button means "Yes/ok/do it...", and the MENU button means
  118. "No/abort/get me out of this".  This follows the accepted Amiga convention
  119. that "left" breaks new ground while "right" is conservative and safe.  If you
  120. get lost in -- or called away in the middle of -- a sequence of mouse clicks,
  121. a couple of MENU button clicks will get you out of it. 
  122.  
  123. *********************************************************************
  124. THE COMMAND LINE:  to call up the program
  125. *****************
  126.  
  127. mCAD ?         Help
  128. mCAD filename  Create/Edit a drawing named "filename".  You need not type
  129.                the filename if you intend to load the file from within mCAD.
  130.  
  131.  
  132. *********************************************************************
  133. THE MENU:   menu items that don't work or aren't yet implemented are
  134. described by "*"
  135. *********
  136.  
  137. *************
  138. PROJECT
  139.  
  140. New         Erases the current drawing.
  141.  
  142. Open        Opens a drawing which exists on disk for viewing and/or editing.
  143.             MicroSmith's file requester is used to specify the file name.
  144.  
  145. Save        Saves the drawing to disk using the current drawing name.  The
  146.             current drawing name is either the name that occurred on the
  147.             command line, or the name of the file most recently "Open"ed.
  148.             The default drawing name is "mCAD.out".
  149.  
  150. SaveAS      Saves the drawing to disk.  MicroSmith's file requester is used
  151.             to specify the file name.
  152.  
  153. Plot        Saves the (entire) drawing as a plot file in the Hewlett Packard
  154.             Graphics Language.  Instructions are included in the file to
  155.             enable XON/XOFF handshaking with the plotter.  To actually make
  156.             the plot, copy the plot file to SER: The plot file name has the
  157.             same root as the current drawing name, and the extension ".plt"
  158.  
  159. Quit        Quits mCAD.  If you have made any changes to the current drawing,
  160.             you will be asked if you want to save it.
  161.  
  162.  
  163. *************
  164. PART
  165. mCAD expects the current directory to contain a sub-directory called "part".
  166. MicroSmith's file requester will let you change directories, however.
  167.  
  168. Open        Includes an mCAD drawing, which was previously saved to disk, in
  169.             the current drawing.  You will use MicroSmith's file requester to
  170.             specify the part name.
  171.  
  172. Save        Saves a group to disk using the current part name.  Select the
  173.             group you want to save with the mouse as described above.
  174.  
  175. SaveAs      Saves a group to disk by name.  Select the group with the mouse.
  176.  
  177. Group       Groups objects together for treatment with an editing tool or to
  178.             be saved as a "part".  Draw a box completely enclosing the
  179.             objects you want treated as a group.  An object can only be in
  180.             one group at a time.  If an enclosed object is already part of a
  181.             group, it will be extracted from that group.  If an entire group
  182.             is enclosed, that group will merge into the new group. 
  183.  
  184. UnGroup     Select a group by clicking on any of its members.  On the
  185.             confirming SELECT click, the group will be dismembered.
  186.  
  187.  
  188. *************
  189. OPTIONS
  190.  
  191. Replot      Redraws the screen.  The options "Axes" and "Grid" do not cause a
  192.             replot automatically because redrawing can take a long time, and
  193.             because you may want to make another display selection before
  194.             redrawing. 
  195.  
  196. Zoom        1)  Draw a box around the region you want to see up close.  mCAD
  197.             will zoom in to the biggest region consistent with both the box
  198.             you drew and the aspect ratio of the drawing.  Note: in this
  199.             version the aspect ratio cannot be changed by any command.
  200.             2)  Click twice in the same spot.  mCAD will zoom out by a
  201.             factor of two.
  202.  
  203. Slide       Draw a line.  On your second SELECT click mCAD redraws the
  204.             picture as if your first click had grabbed a hold of the page. 
  205.             (mCAD is too slow to move the whole picture along with the mouse
  206.             and memory is too precious to spend on a scrollable screen.)
  207.  
  208. FullPlot    Zooms out to show the whole drawing.
  209.  
  210. Axes        This is a toggle switch that puts axes on the display.
  211.             See Replot.
  212.  
  213. Grid        This is a toggle switch that puts a grid over the display.
  214.             See Replot.
  215.  
  216. X-Hair      This is a toggle switch.  The mouse pointer is replaced by a
  217.             crosshair.  (Notice what happens when you press the MENU button
  218.             and move the mouse.)            
  219.  
  220. GridSnap    This is a toggle switch.  Primitives (exceptions: text, circle,
  221.             arc) drawn with GridSnap enabled will snap to the grid on your
  222.             *final* SELECT click.  When enabled, menu item reads "GRIDSNAP". 
  223.  
  224. DataSnap    This is a toggle switch.  Primitives (exceptions: text, circle,
  225.             arc) drawn with DataSnap enabled will snap to previously drawn
  226.             objects (if they are close enough) on your final SELECT click.
  227.             Points are more "attractive" than lines connecting those points.
  228.             When enabled, menu item reads "DATASNAP"
  229.  
  230. nTics*2     Increases the density of tics / grid lines.  A maximum is
  231.             enforced.  This item causes a replot. 
  232.  
  233. nTics/2     Decreases the density of tics / grid lines.  A minimum is
  234.             enforced.  This item causes a replot. 
  235.  
  236. ShowXY      Calls up a numeric readout in the current plot color of the
  237.             pointer position.  The readout is in USER coordinates (the
  238.             numbers which are drawn when you select "Axes" are in USER
  239.             coordinates.) The readout consists of the absolute X
  240.             (horizontal) and Y coordinates and the distances from the
  241.             location of the most recent SELECT click. 
  242.  
  243.  
  244. *************
  245. DRAW
  246.  
  247. Line        Draw a sequence of (one or more) connected lines.  Click twice
  248.             on your final point. 
  249.  
  250. Box         Draw a box by clicking on two corners.
  251.  
  252. Circle      Draw a circle by clicking on the center position, moving the
  253.             mouse to change the size, and clicking again when the size is
  254.             right. 
  255.  
  256. Arc         Draw an arc with three mouse clicks: the first click sets the
  257.             center;  the second click sets the radius and starting angle;
  258.             the third click sets the ending angle. 
  259.  
  260. Measure     *
  261.  
  262. Clone       Select a group by clicking on any of its members.  A duplicate
  263.             will follow the mouse pointer until you press either the MENU
  264.             button ("abort") or the SELECT button. 
  265.  
  266. TextSize    Draw a box indicating the size/aspect of the letters you plan
  267.             to type onto the screen.
  268.  
  269. Cursor      SELECT the location of the text cursor.
  270.  
  271.  
  272. *************
  273. EDIT
  274. In every case, you first select a group for treatment.
  275.  
  276. Erase       SELECT a highlighted group to erase it.
  277.  
  278. Size        SELECT a highlighted group.  mCAD draws the smallest enclosing
  279.             rectangle (possibly a line).  You SELECT a corner of the
  280.             rectangle to begin sizing.  The group is scaled as the mouse
  281.             moves.  Press the SELECT button, when you like what you see, or
  282.             the MENU button to abort. 
  283.  
  284. Move        Select a group by clicking on any of its members.  The group
  285.             will follow the mouse pointer until you press either the MENU
  286.             button ("abort") or the SELECT button. 
  287.  
  288. Rotate      The selected object is rotated about its "center".  Vary the
  289.             angle by moving the mouse and click SELECT to finish or MENU to
  290.             abort. 
  291.  
  292. Rot +90     Select a plot.  The selected plot will be rotated counter-
  293.             clockwise by 90 degrees.
  294.  
  295. Rot -90     Select a plot.  The selected plot will be rotated clockwise by
  296.             90 degrees.
  297.  
  298. Point       Select a group.  When the group you want to modify is
  299.             highlighted, click on the point you would like to move.  The
  300.             point and lines connecting it to adjacent points will follow
  301.             the mouse.  Click SELECT to finish or MENU to abort.
  302.  
  303. Color       Select a group.  The selected group immediately turns to the
  304.             current plot color.  (No chance for abort here.)
  305.  
  306.  
  307. *************
  308. COLORS
  309.  
  310. color boxes    Your menu selection becomes the current plot color.
  311.                Initially, the current color is #4 (first box in second row
  312.                of the palette). 
  313.  
  314. Modify Colors  Call up Microsmith's Palette tool (a very nice tool written
  315.                by Charlie Heath).
  316.  
  317. Save Colors    Save current colors to the file "mCAD.rgb" which is read by
  318.                mCAD on startup. 
  319.  
  320.  
  321. ************************************************************************
  322.  
  323. NEW FEATURES
  324.  
  325. Version 1.2
  326.  
  327.    File input and output from within mCAD has been added.  Thanks to Charlie
  328. Heath and MicroSmith's for the file requester and, while I'm at it, for their
  329. palette tool.  This is the hard stuff, folks.  If I had had to write these
  330. tools myself, you can be sure that they wouldn't be such a pleasure to use,
  331. and that I would be asking for more of a donation than $20.
  332.  
  333.    Point editing has been added.  This feature allows you to move a single
  334. point of a group without affecting other points.
  335.  
  336.    A shortcut for rotating by 90 degrees has been added.  (The original
  337. motive for this was to rotate entire drawings before plotting.)
  338.  
  339.    Several bugs that once caused mCAD to crash have been fixed.  mCAD now
  340. realizes that mouse clicks are being queued up "behind its back" and that
  341. disabling them doesn't erase queued messages.
  342.  
  343.    Groups work right.  In previous versions, the result of grouping objects
  344. that were already in different groups depended on the order in which those
  345. groups had been formed. 
  346.  
  347.    mCAD can now read a file and add the objects in that file to its linked
  348. list of objects.  In other words, the "Parts" menu is fully implemented.  It
  349. may be useful to know that there is no difference, to mCAD, between a "part"
  350. file and a "cad" file.  You can treat a whole drawing as a part and
  351. vice-versa.  You can also use the outputs of the programs "mp" and "tdp" as
  352. parts or as drawings. 
  353.  
  354.    Tab, backspace, and carriage return now do what they say they do.
  355. Backspace does not erase, however.  Also, see "BUGS/WARNINGS...".
  356. ************************************************************************
  357.  
  358. HINTS, SUGGESTIONS ...
  359.  
  360.    mCAD's input file format is very simple.  You can make an mCAD file by
  361. hand or with a simple program in "c", Basic, etc.  In fact, this file can
  362. be used as input to mCAD.  The only lines mCAD will pay attention to are
  363. the following: --------------------------
  364.  
  365. 100 100     This is a box..
  366. 100 200     Note: if you use this file as input to mCAD, DO NOT SAVE!
  367. 200 200     mCAD will cheerfully erase this file, leaving in its place
  368. 200 100     a file consisting only of the numbers to the left.
  369. 100 100
  370. *>          The object above this mark is in a group with the object below it.
  371. *C 4        This object is in color 4
  372.  
  373. 125 150     This is a line..
  374. 175 150
  375. *C 5  
  376.  
  377.       --------------------------
  378.  
  379.    I prefer a "fast" mouse for most programs, but would like a slower one
  380. for doing fine work with mCAD.  I haven't found a way to change the mouse
  381. speed while in the program (any ideas, Amiga gurus?), but an acceptable
  382. substitute is using the Amiga-arrow keys.  You may have forgotten about this
  383. keyboard alternative since it is so rarely useful.  Also, don't forget about
  384. Amiga-alt for mouse buttons.  (Sometimes, I inadvertently move the mouse
  385. while clicking a mouse button.)
  386.  
  387.    Grouping objects:
  388.    Since the only way to indicate which objects you want in your group is to
  389. draw an enclosing rectangle, you may be having trouble getting just the
  390. objects you want.  You don't have to enclose all the desired objects at once,
  391. however. Two or more rectangles can be used.  If you group objects which
  392. already are parts of separate groups, the groups will be merged. 
  393.  
  394.    When X-Hair is not selected, the Intuition pointer is supplemented with a
  395. dot at the current location of the graphics cursor.  (You may know that the
  396. Intuition pointer is implemented in low resolution and therefore cannot, with
  397. precision, select a point on a high resolution screen.  The dot is a remedy
  398. for this.)  To make effective use of the dot -- indeed, too SEE it -- your
  399. pointer should have its "hot spot" on one of the "transparent" pixels.  In
  400. Preferences, use the "Set Point" option while you "Edit Pointer". 
  401.  
  402.    To keep a constant text size in your drawing through many edits, or from
  403. drawing to drawing, you might consider making a box of the desired text
  404. size and saving it as a part called "textsize".  When you want to set your
  405. text size, then: open the "textsize" part;  select "TextSize" from the
  406. "Draw" menu; and draw a box exactly like the "textsize" box.
  407. ************************************************************************
  408.  
  409. BUGS, WARNINGS, ADDITIONAL NOTES ...
  410.  
  411.    You MUST select a text size and cursor location before typing text into
  412. your drawing.  The defaults aren't done right in this version.  This means
  413. that, if you don't specify the size and location before drawing your first
  414. letter, text will be put any old where in some arbitrary size -- which, in
  415. turn, means that you can expect a short, one-sided chat with the Guru the
  416. next time you select "FullPlot". 
  417.  
  418.    Letters, in this version, are REALLY primitives; all points are connected
  419. together as though drawn with a single "Line" command.  This means characters
  420. like [ ! = ? : ; " Q ] don't look so good.  (Ok, they look awful!).  Text is
  421. likely to improve in some future version. 
  422.  
  423.    Occasionally, with both the X-Hair and the dot, trash may be left on the
  424. screen after editing a group.  Use "Replot" for now.  (I don't consistently
  425. "pick up" the dot/crosshair before drawing over it.) 
  426.  
  427.    mCAD doesn't do ANY memory checking.  It will crash the system or exit
  428. without returning allocated memory if it finds that there isn't enough memory
  429. to do whatever it wants to do.  In a multi-tasking system with a ram disk,
  430. this is bound to happen to you sooner or later.  This IS going to be fixed!
  431. Until it is fixed, I suggest you save your drawing often and keep an eye on
  432. the amount of ram available.
  433.  
  434.    Tim Mooney
  435.    120 Purefoy Rd.
  436.    Chapel Hill, NC 27514
  437.  
  438.    If you have a modem, you can leave me mail at the following bulletin
  439.    board which I monitor regularly.
  440.  
  441.       "Deep Thought"   (919) 471-6436
  442.  
  443. ------------------------------------------------------------------------
  444.  
  445.    Registered users:
  446.  
  447.    I plan to move sometime in the fall of '87.  When I do, I'll leave a
  448. forwarding address on the bulletin board mentioned above and with:
  449.  
  450.    Department of Physics and Astronomy
  451.    Phillips Hall
  452.    University of North Carolina
  453.    Chapel Hill, NC  27514
  454.