home *** CD-ROM | disk | FTP | other *** search
- POVCAD 2.0a for DOS by
- Alfonso Hermida
- Pi Square BBS (301)725-9080
- CompuServe 72114,2060
- [GraphDev Forum]
- 5/8/93
-
- NOTE: POVCAD requires a VGA graphics card and a mouse to run.
-
- POVCAD for Windows is also available.
-
- -------------------------------------------------------------------------
- Copyright (c) 1993 by Alfonso Hermida.
- All rights reserved. The program POVCAD.EXE is distributed "As is".
- The author assumes no responsibility for damages resulting from the use of
- this program. The program has been tested but no software is "bug-free"
- so...use at your own risk!
- -------------------------------------------------------------------------
-
- Distribution:
- Feel free to distribute POVCAD.EXE and it's companion file POVCAD.DOC for
- non comercial purposes. Distributors may charge up to $5 for this program.
- If you wish to distribute this program with a comercial software or book
- please contact the author at the BBS number given above or by mail:
- Alfonso Hermida, 9346 Kings Grant Rd, Laurel, MD 20723.
-
- This program is distibuted as Shareware. You may use this program for
- a period of 30 days at which you must either register this software or
- stop using it. Registration entitles you to support thru the BBS.
-
- Registration cost is only $15 and helps continuing work to improve this
- software. To register send your check or money order to the above address
- with your name, address, phone number and a password(for BBS access). Check
- at the end of this document for registration form.
-
- --------------------------------------------------------------------------
-
- THANKS!
- I want to take the opportunity and thank a lot of people and BBS that have
- helped POVCAD become such a success. I would like to thank Albert Waltner,
- Peter Jack, Curtis Olson for Beta testing and all the helpful comments.
- Dan Farmer was kind enough to upload the file to COMPUSERVE. Steve Anger
- gave me some help with the smooth triangle problem I was having (it turns
- out that the POVRAY version I was running had a bug!). Alexander Enzmann,
- author of the Polyray raytracer (thanks!) was enthusiastic about adding
- support for Polyray users...(support is limited but it should improve with
- time.) James P. Hawkins and Amanda Osborne did a great deal of testing also.
- There were also some great BBS such as:
-
- * You Can Call Me Ray BBS (Illinois)
- Bill Minus/Aaron Collins (SysOps)
- (708)358-5611
-
- * The Graphics Alternative BBS (California)
- Adam Shiffman (SysOp)
- (510)524-2780
-
- * Trace of Reality BBS (Virginia)
- Joe Liccel (SysOp)
- [system is down at this time]
-
- * Monsoon BBS (Maryland)
- Sunil Gupta (SysOp)
- (410)235-2365
-
- In Europe: Raytech BBS - The UK's only Raytracing BBS
- Paul Smith (SysOp)
- +44 862 88340
-
-
- who helped me distribute my programs and overall support.
-
- And for other specific thanks, check the BUG LIST at the end of this document.
- Finally, all of you who were so kind to register their copies. This proves
- that Shareware is alive and well.
- ----------------------------------------------------------------------------
-
-
-
- What's POVCAD?
-
- POVCAD is a small solid object modeling tool to create scene files for
- raytracers. It's based primarily on the POV(Persistence of Vision)
- raytracer written by the Persistence of Vision Group. POV is a copyrighted
- freeware raytracer. If you would like to get in contact with them,
- contact Compuserve (800)848-8990, GraphDev forum or call YCCMR BBS
- (708)358-5611, which is a raytracer specific BBS. POVCAD also supports
- the Polyray raytracer by Alexander Enzmann. The support is not complete at
- this point but a lot can be done.
-
-
- With POVCAD you're able to create visually the scene file and have a
- pretty good idea (geometry-wise) of how the objects are positioned in
- 3D space. There is no support for textures and color visualization since
- POVCAD is a wire frame-based program. Nor, you'll see the results of
- any constructive solid geometry operation (boolean operation..for short).
-
-
- POVCAD supports the following objects:
- * planes
- * cylinder
- * cone
- * sphere
- * ellipsoid
- * torus
- * box
- * height_field
- * Raw data files (loading)
- * Sweep (solid of revolution)
- * Extrude (operation on curves)
- * light_source/spotlight
- * camera
-
- and operations such as union, difference,intersection and composite
- objects. Textures can be selected from a list without need of typing.
- The scene view can be changed between isometric,YX,YZ and ZX.
- A session list shows the steps you took to create any image and you may
- select any of the objects from the list by clicking on it.
-
- An interesting feature is the ability to create or read data files
- with path information for animation software. You can create linear
- interpolated data, circular motion, parabolic, helix or just freehand
- mode, where you sketch the path with the mouse. POVCAD does not do
- animation but it plots the path files so you can see how things look
- on the screen. The data can be transformed like any object in POVCAD.
-
- In the File menu, there is an option to save the session file and to
- Export to POV (that is to create the POV session file).
-
- AN IMPORTANT NOTE: All rotations and translations are absolute(measured
- from the origin). Therefore, if an object has been translated to (1,1,1)
- and you change the x to 1.5, it will be (1.5,1,1) and not (2.5,1,1).
-
- My best suggestion is that you play with it for a while to get a better
- understanding of the program.
-
-
- What's NEW on version 2.0a ************************************************
-
- 1) Ability to select objects with the mouse and then copy, move,
- copy/translate or copy/rotate it.
-
- 2) POVCAD2 now reads 2 ASCII files: TEXTURES.DEF and COLORS.DEF.
- Modify and use these files to include additional texture and color names.
-
- 3) The LIGHT object acts as a SPOTLIGHT also. Check "Creating Lightsources".
-
- 4) Camera object is created and added to the POV file. (User must modify).
-
- 5) Extrude operation on a curve - convert a curve into a collection of plates.
- Each plate has 2 triangles.
-
- 6) Grid spacing can be modified (check VIEW menu command)
-
- 7) Support for Polyray raytracer. This includes the EXPORT function.
-
- 8) Status line indicating SNAP,GRID,POINTS,ISO,YX,YZ,ZX and CSG modes.
-
- ********************************************************************************
-
-
-
- Creating an Object
-
- To create an object is easy. Here are the steps:
-
- 1) Click on the Object menu and click again on the object you would
- like to create. All objects start at the origin, except the sphere
- which asks for the center coordinates.
-
- 2) To rotate/translate or scale the object, click on Xform and select
- the appropiate transformations. The way this program was developed,
- rotations are ALWAYS applied first THEN the translations. Keep that
- in mind.
-
- 3) If you need to edit/delete an object, click on Session and click on the
- object to be modified. On the bottom right part, the current object
- is shown, with it's texture. If the object is already there, you can
- operate on it without having to click on Session.
-
- NOTE:The LAST object created is ALWAYS the current object. If you wish
- to transform it, just go directly to Xform or Texture (if you want
- to put a texture to it).
-
- To delete an object, either select it (thru the Session menu) or just
- go to Edit if it's the last object drawn and click on Del. You may use
- the mouse to select an object too...read the section below titled
- "Selecting objects with a mouse..."
-
-
- Textures and Colors
- To attach a texture or color, select an object (if you do not select an
- object, the current selected object will be used). Click on TEXTURE or
- COLOR and select the color or texture.
-
- To change the texture, simply reselect the object and click on a new texture
- or color.
-
-
- Adding more TEXTURE and COLOR definitions
-
- If you have created your own textures and colors, you may modify 2 ASCII
- files and save them in the directory where POVCAD resides. The first one
- is "TEXTURES.DEF". It could look something like this:
-
- my_new_texture
- acid_rain
- sweet_and_sour
-
- The file basically consists of the "names" of the textures. To include the
- definition in the scene, add the a line similar to #include "mytextur.inc",
- where the definitions are given. In this example 3 new textures will be
- added to the texture list. Texture names CAN NOT have spaces!
- i.e. a_texture_name, myTexture are valid examples, but a texture name,
- my Texture are not.
-
- To do the same with the colors, use the ASCII file named "COLORS.DEF".
- The same applies to it. The file must be in the same directory as POVCAD.
-
- * IN THE DOS VERSION THESE 2 FILES ALREADY EXIST AND HAVE ALL THE PoV
- DEFINITIONS. POLYRAY USERS SHOULD MODIFY TO INCLUDE THEIR OWN. INCLUDED
- ARE TEXTURES.PI AND COLORS.PI (FOR POLYRAY USERS).
-
- ***** To attach textures and colors to CSG objects check the *************
- "Creating Constructive Solid Geometry" section
-
- Creating Solids of Revolution (Sweep command)
-
- 1) Click on the PointOff button (to enable point creation)
- 2) Select a View different than Iso (i.e. YX,ZX or YZ)
- 3) Click on the window and draw a contour (up to 50 points)
- 4) Select the Sweep command from the Objects menu
- 5) give a filename.ext (the data will be saved in RAW format)
- 6) indicate sweep angle and number of segments
-
- * If you wish to erase the points and start all over use the Del Points
- command in the Edit menu.
- * SnapOn forces the points to fall in the intersections of the grid
- lines, while GridOff let's you select any place on the screen.
-
-
- NOTE: The format of RAW and SWEEP data files is:
- x1 y1 z1 x2 y2 z2 x3 y3 z3
- x4 y4 z4 x5 y5 z5 .......
- ...... ect ..............
-
- where each line represents a triangle. Usually I use Steve Anger's
- RAW2POV program to create objects with RAW data files. RAW2POV will
- optimize A LOT the image, while POVCAD will just convert the data to
- triangles and that's it!
-
-
- Creating an EXTRUDEd object (saves data in RAW format)
-
- The EXTRUDE command (under the OBJECT menu) works in the same way the
- SWEEP command does. SWEEP rotates and copies a curve while EXTRUDE
- displaces and copies the curve. As an example, if you create a line and
- extrude it, it will look like a plate. The EXTRUDEd object will be diplaced
- in an orientation perpendicular to the computer screen and in the
- direction going into the monitor. In other words, if you are currently in
- the YX view, the cuve will be EXTRUDEd in the +Z direction(into the screen).
-
- To create an EXTRUDEd curve do the following:
- 1) select a view different from ISOmetric (YX,YZ or ZX)
- 2) click on the PointsOFF icon to enable point creation
- 3) create a curve by clicking on the drawing window
- 4) click on the OBJECT menu, then on EXTRUDE
- 5) give a name for the file to be created (RAW format)
- 6) enter the extrusion length
-
- * The file will be saved in a RAW data format.
- * Click on ISO to view the final object.
-
-
- Try this with EXTRUDE:
-
- You can create letters with the EXTRUDE command that will look like sheets
- of metal that were bent to form letters. As an example create a series of
- points to form the letter "S". Use the EXTRUDE command and save it to a
- file. Since that file is in RAW format, use Steve Anger's RAW2POV and make
- smooth surfaces. The final product shows a nice "S" letter that looks like
- it was "rolled" instead of "bent" to form the letter "S". You can have both
- effects. POVCAD will generate a "bent" effect while RAW2POV can create both
- effects.
-
-
- Creating Constructive Solid Geometry
-
- Let's use an example to explain this topic:
- We'll assume we want to create a cylinder with a hole in the middle.
- Since the operation is a difference:
-
- 1) click on CSG and then select "difference".
- 2) create the cylinder and position it.
- 3) create a sphere (the hole) and position it.
- 4) Click on CSG and then "Close".
-
- Close is the command to tell the program that the current CSG operation
- has ended. The Session list would look like this:
-
- DIFFR
- CYL ........
- SPH ........
- ENDF
-
- Where:
- DIFFR = difference operation
- CYL ... = cylinder definition and transformations
- SPH ... = sphere definition and transformations
- ENDF = tells the program that this is where the difference operation
- ends
-
- Now let's assume that you want to create a union of 2 cylinders each
- one with a hole in it: This is how the Session list would look like:
-
- comments:
- UNION 1) union operation starts here
- DIFFR 2) difference operation starts here
- CYL .... 3) cylinder #1
- SPH .... 4) sphere #1
- END 5) clicked on CSG then on Close
- DIFFR 6) Start another difference
- CYL .... 7) cylinder #2
- SPH .... 8) sphere #2
- END 9) clicked on CSG then Close
- ENDF 10)clicked on CSG then Close
- (click on TEXTURE now to add one to the object)
-
- As you can see, the software uses END and ENDF to distinguish between
- intermediate CSG operations and the final CSG operation...in this case
- the UNION was the final and the DIFFR were the intermediate.
-
- The same idea applies to all CSG operations. Composite is not a CSG but
- it was the best place to put it. <grin>
-
- The letters "CSG" (lower right hand side) will appear in white as long as
- the current CSG operation is still in effect.
-
- (POLYRAY users)
-
- The previous example would look like this:
- (POVCAD) (Polyray output will look _something_ like this)
- UNION object {
- DIFFR object {
- CYL .... CYL ...
- SPH .... - SPH ...
- END }
- DIFFR + object {
- CYL .... CYL ...
- SPH .... - SPH ...
- END }
- ENDF }
-
- Polyray users must follow PoV's CSG format (...sorry!).
-
-
- * TEXTURES ON CSG OBJECTS *
-
- To put a texture on a CSG object click on ENDF(using the Session command)
- to make it the current object (you'll see ENDF at the bottom right part
- of the screen) then click on TEXTURE to add the one that you want.
-
-
- Transforming CSG /Composite objects
-
- At this point it is NOT possible to transform (XFORM) the whole set of
- objects. You may XFORM any of the individual objects that compose a CSG
- object.
-
-
- Quick Comment
-
- If you want to clip an object with 2 planes do the following:
- 1) Click on "intersection"
- 2) create the object to be clipped
- 3) create plane #1
- 4) create plane #2
- 5) rotate plane #2 so that the normal is facing oposite
- to plane #1's normal. (When a plane is created, the normal
- is ALWAYS in the + direction of the axis.) Also you must translate
- plane #2 so they're not in the same place.
-
- Example:
- plane#1: PLANE_Y,Translate_Y = .5
- plane#2: PLANE_Y,Translate_Y = -.5,Rotate_Z = 180
-
- Plane #1's normal is pointing in the +Y direction, while
- plane #2's normal is in the -Y direction (due to rotation
- about Z of 180 degrees)
-
- Any object placed in the origin will be clipped at Y=0.5 and
- Y=-0.5 . Try it and see!
-
-
- Selecting objects with the mouse/ rotations and translations
-
- There are different methods for selecting objects so that you may modify them.
-
- 1) Clicking on SESSION
- You may click on the SESSION command in the main menu. This will show
- a list of all objects that are currently in the database. To select
- any of them, simply click on the line where it appears, then click on
- OK. Observe that on the lower right corner, the object selected will be
- displayed(with it's texture). Now you may use XFORM or click on EDIT
- or use any of the next methods.
-
- The current object always will appear on the lower right corner of the
- screen. If you wish to reselect a new one, you may either, click on
- the SESSION command, or click on the scroll bar on the lower right
- corner to move thru the objects. The one being shown is the current
- one. Any editing command will apply to the current selected object.
-
-
- 2) Use of the left button(mouse)
- To select an object, check that the PointsOn/OFF icon is OFF. Now,
- move the mouse cursor to a point near the center of the object that
- you want to select. Press, the left button. The object selected will
- be redrawn in a light color. If the computer selected the wrong one,
- simply move the mouse to another position near the center point of the
- object and click. If still the computer selects the wrong one, you may
- change the current view (Iso,YX,YZ,ZX) to find a better viewpoint.
-
- This command may select the incorrect object when various objects share
- a common center point, or the object you want to select is behind
- another one. In those cases, change the VIEW and retry. In the worst
- case, use the SESSION command to select the object.
-
- * SWEEP and RAW objects can't be selected with the mouse! use the
- methods explained on step 1) *
-
- * CONEs are selected by clicking on the apex or near it *
-
- Once you click on an object and select it, the object will be drawn in
- a light color. If you click on REDRAW, all the objects will be drawn in
- black, but the current object will stay current.
-
- 3) Use of the right button(mouse)
- Once an object has been selected, you may wish to Move,Copy,Copy and
- Rotate or Copy and Translate. To do this, select and object. The next
- step depends on the command:
-
- a) Move
- To move the current selected object, move the mouse to the
- position where you want the object. Press the right button and
- select MOVE.
-
- b) Copy
- To copy the current selected object, move the mouse to the
- position where you want the new object. Press the right button
- and select COPY. The texture of the new object will be the same
- as the old object's.
-
- c) Copy/Rotate
- This command is used to make multiple copies of an object, all of
- them rotated by a certain amount of degrees. To use this command,
- select an object, then move the mouse to the a point that will
- become the center of rotation. Click the right button. Select
- Copy/Rotate. Enter the angle between objects (in degrees). Enter
- the number of copies to make, NOT including the original one.
-
- d) Copy/Translate
- This command is used to make multiple copies of an object, each
- one at a certain X,Y,Z distance from the other. Select an object.
- Press the right button. Enter the number of copies and the
- displacements of the new objects. The displacement is a
- cumulative effect, for example:
-
- if a sphere is at (0,0,0) and you enter x=.2,y=.1,z=.5 and enter
- 3 copies then, object #1 will be at (.2,.1,.5) the next one at
- (.4,.2,1.0) and the last at (.6,.3,1.5).
-
- You may enter a value of zero for any of the coordinates. If you
- put all zeroes, you'll get multiple copies in the same place!!!
-
- e) Delete
- This will delete the currented selected object.
-
-
- Creating PATH data files for your animations
-
- This feature allows you to create data files of paths that may be
- used in animations programs. Simply select the Path menu and select
- which curve to create. These data files can be XFORMed in the same
- fashion as any of the objects supported by POVCAD.
-
- To create a curve, select the corresponding curve and you'll be asked
- for a filename to save the data. This is done to reduce memory
- requirements on your system. The following is a brief description:
-
- 0) Load and SAVE
- Load read any 3D point ASCII file and converts it into a path,
- i.e. lines will be drawn to connect the points sequentially. Your
- data file SHOULD NOT have an extension *.PTH since this is used by
- POVCAD to save the final path files.
-
- SAVE converts your data file, i.e. filename.ext into filename.PTH.
- Initially, filename.ext was a set of 3D points that you created
- yourself or thru POVCAD. Since you may want to rotate, scale or
- translate the data, POVCAD takes those operations and changes your
- data. In order to keep the original data intact, POVCAD saves the
- new data with the PTH extension.
-
- The EXPORT to POV function in the FILE menu also creates the *.PTH
- files. If you haven't created any 3D objects and you don't need to
- create a POV file, simply use the SAVE function in the PATH menu, to
- save your animation files.
-
- To merge 2 or more data files, drop to DOS or load a texteditor
- and simply append one file to the other to create more complicated
- path data files. It's that simple! (gasp!...I hope it works)
-
-
- 1) Freehand
- Converts a set of points created on the screen to a path. Maximum
- number of points is 50.
-
- 2) Linear
- Click 2 points (more than that will be discarded) on the screen.
- The routine will subdivide the line segment into a set of points.
-
- 3) Circular
- Creates a circular path. No points have to be created with the
- mouse.
-
- 4) Parabolic
- Follows the curve Y = aX^2 where a is the parabola coefficient
- and the value of Y is the height. The value of Z is zero but
- you may create this curve from any view. The routines will swap
- the axis to reflect the view you're in.
-
- 5) Helix
- Creates a "spring". The curve follows :
- x = a cos(2*pi*t)
- y = a sin(2*pi*t)
- z = t
-
- Therefore Z is the "height" of the function. This depends on the
- current view setting.
-
- After creating the curves you may use them to animate your raytraced
- images. POVCAD simply creates the curves and shows them with the
- geometry so you have a better understanding of how things might look.
- Remember, you can scale, rotate and translate the data like any other
- object! have fun!
-
- Creating LightSources
-
- To create a light_source object, click on the MISC command in the main
- menu, then LIGHT. Enter the origin coordinates of the light_source (x,y,z).
- To add a color to the light_source, select it (Session) then click on the
- Color command in the main menu. If you wish to move the light_source, click
- on XFORM and modify the translate parameters.
-
- The rotation angles do not apply to light_sources. The scale factors will
- only affect the size of the light_source symbol (resembles a 3D axis) in
- POVCAD, POV does not require a scaling factor.
-
- When the scene file is EXPORTed to POV, the definition of the light_source
- will also include the spotlight keywords commented out. If you need to use
- your light as a SPOTLIGHT, simply erase the "//" characters and replace the
- question marks "?" after each keyword with a proper value. Look at this
- example:
- ***** part of a scene created with POVCAD ******
- // LIGHT_SOURCE
- object {
- light_source{< .1 .2 .3 > color Blue
- // If you need a spotlight, use the statements below
- // replace ? with proper values
- //spotlight
- //point_at < ? ? ? >
- //radius ?
- //falloff ?
- //tightness ?
- }
- }
-
-
- Grid Spacing command
-
- The Grid helps you determine relative distances between points or objects.
- To show the Grid, click on the GridOff icon to enable the Grid. Initially,
- the World area will be divided into 20 columns and 20 rows (always equal in
- number). If you wish to modify this number, click on the VIEW menu and
- select the GRID SIZE command. Enter an integer number. This number will
- indicate the amount of rows AND columns, i.e. 10 indicates 10 rows and
- 10 columns. The higher the number the more precision you'll get.
-
- Use the Snap to select only points which are in the grid. Turning
- Snap OFF let's you select any place in the screen. Experiment with it.
-
- The letters "G" and "S" will appear highlighted on the lower right side if
- the GRID mode is on and if the SNAP mode is on, respectively.
-
-
- How does POVCAD save the objects?
-
- POVCAD saves 3 files for every session: {(4) is optional }
- 1) *.CAD This is the object definitions file
- 2) *.TEX file with the textures of each object
- 3) *.WRL world definition of the session
- 4) *.PTH data files to be used in your animation programs
- 5) *.DEF (not saved by POVCAD but read-only) Texture and color names.
-
- *.CAD file structure:
- This is the format that POVCAD uses for those of you that want to create
- external programs to deal with them. The file is an ASCII file with
- double quotes at the begining and end of each statement:
-
- rx,ry,rz = rotations about each axis (absolute)
- tx,ty,tz = translations on each axis
- sx,sy,sz = scale factors for x,y and z
-
- **** IMPORTANT: Each parameter is separated by 1 space. This is important
- if you're writing utilities for POVCAD. This space is REQUIRED.
-
-
- 1) Plane: "PLN axis rx ry rz tx ty tz sx sy sz"
-
- Example:
- "PLN X 0.0 0.0 0.0 0.0 0.0 0.0 1 1 1"
-
- 2) Cylinder "CYL radius height rx ry rz tx ty tz sx sy sz"
-
- Example:
- "CYL .2 1 0.0 0.0 0.0 0.0 0.0 0.0 1 1 1"
-
- 3) Cone: "CON radius height rx ry rz tx ty tz sx sy sz"
-
- Example:
- "CON .2 1 0.0 0.0 0.0 0.0 0.0 0.0 1 1 1"
-
- 4) Sphere: "SPH radius rx ry rz tx ty tz sx sy sz"
- (tx ty and tz are the center of the sphere)
- (sx sy sz must have the same value)
-
- Example:
- "SPH .5 0.0 0.0 0.0 0.0 0.0 0.0 1 1 1"
-
- 5) Ellipsoid: "ELI xradius yradius zradius rx ry rz tx ty tz sx sy sz"
-
- Example:
- "ELI .5 .2 .3 0.0 0.0 0.0 0.0 0.0 0.0 1 1 1"
-
- 6) Torus: "TOR radius_major radius_minor rx ry rz tx ty tz sx sy sz"
-
- Example:
- "TOR .7 .2 0.0 0.0 0.0 0.0 0.0 0.0 1 1 1"
-
- 7) Box: "BOX rx ry rz tx ty tz sizex sizey sizez"
- (the Box is a unit cube that has been scaled to size)
-
- Example:
- "BOX 0.0 0.0 0.0 0.0 0.0 0.0 1 2 .1"
-
- 8) HeightField "HFL filename.ext rx ry rz tx ty tz sx sy sz"
- (POVCAD draws a pyramid to represent it, with dimensions x=1 y=1 z=1,
- so it must be scaled properly. Check POV's docs on height_field.)
-
- Example
- "HFL mountain.gif 0.0 0.0 0.0 0.0 0.0 0.0 1000 1000 3245"
-
- 9) RAW: "RAW filename.ext rx ry rz tx ty tz sx sy sz"
- (Consider using Steve Anger's RAW2POV, it's more efficient. Don't
- say I didn't tell you about it!)
- Example:
- "RAW sweep.dat 0.0 0.0 0.0 0.5 1.3 0.0 1 1 1"
-
- 10) Sweep
- (same as RAW only that the SWP keyword appears instead of RAW)
-
- 11) Extrude
- (same as RAW)
-
- 12) Path
- "PTH filename.ext 0.0 0.0 0.0 0.0 0.0 0.0 1 1 1"
- This command points to a file with the format:
- p1.x p1.y p1.z
- p2.x p2.y p2.z
- ....ect .....
-
- which was created with POVCAD or that you made up yourself.
-
- 13) Light Source
- "LTS 0.0 0.0 0.0 X Y Z .25 .25 .25"
-
- Comments:
- * The first three numbers are not used at all.
- * X Y Z refer to the light source position
- * the three .25 values are scaling factors that only affect
- the drawing on POVCAD. You may change those numbers to
- suit your needs by using the XFORM command (scale x,y,z).
- * The light_source color is in the *.TEX file.
-
-
- The *.TEX file structure:
- The *.tex file has a line for every item in the *.cad file. Some places
- may be empty but the file length is the same as the *.cad file. If you
- created light_sources, the colors will appear here also.
-
- The *.WRL file structure:
- This file has 4 values (if it's not found in your directory, POVCAD
- assumes a world definition of (-1,-1)-(1,1) ):
-
- WXleft WYbottom
- WXright WYtop
-
- These values correspond to the YX plane view.
-
- The *.PTH file structure
- This is a straight ASCII file with a list of 3D points:
-
- p1.x p1.y p1.z
- p2.x p2.y p2.z
- ... ect...
-
- The data has already been transformed by any operations you might have
- done inside POVCAD.
-
-
- TEXTURES.DEF and COLORS.DEF files
-
- These files consist of additional texture and color names not
- included in POVCAD. Both files follow the same format: 1 name per line.
- POVCAD will automatically load them if present in POVCAD's directory.
- To facilitate their use, sort them before using with POVCAD.
-
-
- Other Stuff
- --------------------------------------------------------------------
- Limits
- 1) At this point up to 100 objects may be created. You may do complicated
- objects by MERGEing files. This will change on future versions.
-
- 2) All files are saved and read in the current directory. Due to the user
- interface limitation.
-
- 3) There is a limit in size for TEXTURES.DEF and COLORS.DEF of roughly
- 150 names on each. You may modify and later sort the names for easier
- access. If file is larger, the extra names will not be read.
-
- 4) When selecting the OPEN command to read a data file, the list of data
- files (*.CAD) can be up to 50 files. My suggestion is to work one model
- at a time and then save it to some other directory, while in DOS.
-
- 5) VGA mode and a mouse are required. The code was compiled for a 286 with
- emulation library (no coprocessor required).
-
- CSG/COMPOSITE Objects
- You can not XFORM the whole CSG/COMPOSITE object...you may XFORM any of
- the components.
-
- World Coordinates Definition:
- POVCAD starts with (-1,-1)-(1,1) => (lowerleftcorner)-(upperleftcorner).
- Click on View and then World to change that or use the ZoomIn/Out icons
- to scale up or down. When you ZoomIn the world = world/scalefactor and
- when you ZoomOut the world = world * scalefactor.
-
- Pan
- You can Pan(scroll) in all direction by clicking on the arrows. You may
- change the Pan Step Size to move faster or slower. Experiment with it.
-
- Copy (from the Edit menu)
- The Copy function will create an exact copy of the current object. That
- means that it will be also in the SAME place as the original. Then XFORM
- will be shown and select the transformation necessary to put the new object
- where it should be. Click on redraw to refresh the screen if necessary.
-
- Files
- The Export to POV creates a POV format file of the current scene. The
- default name is POVCAD.OUT...the name can be changed. It also creates
- any path files (*.PTH) that are in memory.
-
-
- Your Suggestions
- I do welcome your comments and suggestions! Registered users have a
- better chance of seeing their comments incorporated in the program.
- If you like it or not let me know!
-
-
- BUG LIST (ugh!) [Check Pi Square BBS for the latest updates!]
- [Windows version....DOS version starts at 5/2/93]
- -------------------------------------------------------------------------
- Ver 1.0a 2/8/93 (thanks to Bill Martin!)
- - (fixed) error in height_field definition (was totally wrong!)
-
- - added "object { }" and "color" keywords to light_source object
-
- - error on cone definition (not sure what the problem is :( )
-
- Ver 1.0b 3/27/93
- - (fixed) You may press [OK] on the SESSION windows without having done
- a selection. (the program used to crash)
-
- - Cone_Y was changed to QCone_Y since Cone_Y was used in an old version
- of the SHAPES.INC include file. If you have the old version, replace
- QCone_Y with Cone_Y.
-
- - (fixed)The 3D axis was not appearing at the beginning of the program.
-
- - The name of the file now appears at the top of the Window (caption).
- If no file is present, the caption "POVCAD version#" will appear.
-
- - When a POV file is created with the EXPORT function, the name of the
- file, date and time of creation will appear on the top.
-
- (thanks to Phil Long!)
- - (fixed) The copy function was not copying the texture to the new object.
-
- - (fixed) When opening the texture window and color window, you may click
- on the texture or color word to accept it...no need to click on [OK].
-
- (thanks to Bill Martin!)
- - I added a scroll bar at the bottom right area of the screen, near the
- current object and texture info box. Once an object is created, it will
- appear in the info box. If you have more than one, simply scroll thru
- each one...no need to use the SESSION dialog box anymore unless you want
- to see more than one object at a time. The object that appears in the box
- is the current object and may be XFORMed at any time.
-
- (thanks to Peter Jack!)
- - (fixed) Light source was not accepting negative numbers
-
- Ver 1.0c 4/2/93
- (thanks to Neil Clark and Kevin Luck!)
- - (fixed) The "SAVE AS.." command was not working properly.
-
- Ver 2.0 4/10/93
- (thanks to Phil Long!)
- - Modified RAW data output (format). Sometimes only "." would appear!
- The new format is "#.###E##".
-
- - (fixed) Bug in the SWEEP command. The command worked ok only on the YX
- view...the others would give incorrect swept images.
-
- (thanks to Amanda Osborne!)
- - If you create a RAW data file with any other program, be sure to check
- that the first line doesn't have text or an empty line. If it does,
- POVCAD chokes. I'll try to check for it on a future minor release.
-
- Ver 2.0a 4/24/93
- - (fixed) bug on Open command. POVCAD would choke if texture (*.tex) file
- was not available.
-
- - added support for the Polyray raytracer. EXPORT works for PoV and
- Polyray.
-
- - added a viewpoint definition window (similar to PoV's camera).
- It can be found in the MISC menu.
-
- - CSG operations DO NOT work for Polyray at this point.
-
- - modified Export to POV routine to eliminate all rotate <0 0 0>,
- scale <1 1 1>, or translate<0 0 0>...they are not needed.
-
- - more experimentation with the CONE_Y definition...hope it works.
-
- Ver 2.0a 5/2/93
- - DOS version was finished. Similar to Windows version.
-
- Ver 2.0a 5/4/93
- - added CSG support for Polyray
- (thanks to James P. Hawkins!)
- - SWEEP command was bombing out if not points were created.
-
- Ver 2.0a 5/8/93
- - added the DELETE icon when the right button is pressed.
- - Incremented point creation limit from 25 to 50.
- - faster scrolling by adding 2 more icons to simulate "page up"/"page down".
- (thanks to Peter Jack!)
- - Fixed bug in the scroll function.
- ------------------------------------------------------------------------
-
- REGISTRATION FORM FOR POVCAD 2.0a (c) Alfonso Hermida 1993
- DOS VERSION
- COMPLETE THE REQUIRED INFORMATION
- Send check or money order to
- Alfonso Hermida
- 9346 Kings Grant Rd
- Laurel MD 20723
-
-
- Name :_________________________________ Date:_________
-
- Address:________________________________________________________
-
- ________________________________________________________
-
- ________________________________________________________
-
-
- Phone :__________________________________
-
-
- Your registration entitles you to support thru Pi Square BBS. Write
- a temporary password to add your account to the BBS:
-
- BBS password: _________________________
-
-
- Registered users of a given version do not have to register for minor
- revisions. For example, if you registered version 1.0, then 1a,1b,1c are
- minor revisions, and version 2.0 will be a major revision.
-
- Registration fee: Windows version users .......... $ 0.00
- New user........................ $15.00 (USA).
-
- Would you be interested in the source code? Yes[ ] No[ ]
- (written in Borland C/C++ 3.1)
-
- Comments:__________________________________________________________
-
- ___________________________________________________________________
-
- ___________________________________________________________________
-
- ----------------------------------------------------------------------
-