                                  - TOC-   1 -





 3dTerp - The PASTERP based 3d interpreter ............................      1
 A Quick Look at 3dTerp operation .....................................      1
 Setup - Installing 3dTerp ............................................      1
 Contact information ..................................................      2
 3D Library routines ..................................................      3
 File List - The files in the 3dTerp package ..........................      3
 Warranty .............................................................      3
 procedure setColor ...................................................      4
 procedure load3dObject ...............................................      4
 procedure move3dObject ...............................................      5
 procedure paint3dObject ..............................................      5
 procedure rotate3dObject .............................................      5
 procedure scale3dObject ..............................................      5
 procedure move3dObjectTo .............................................      6
 procdeure position3dObject ...........................................      6
 procedure setPerspective .............................................      7









































                                  - TOC-   1 -

                                    -    1 -






3dTerp - The PASTERP based 3d interpreter
 
3dTerp is a combination of two HyperAct, Inc. products - 
PASTERP - The pascal-like interpreter, and 3dLib - a 3D library for 
Pascal.

PASTERP is a script language modeled after the Pascal language, but 
with language enhancements to make it easier and safer to use by end-
users, and with an open architecture that allows applications to 
include a version of PASTERP that is modified to provide application 
specific functionality.

3dTerp is a simple PASTERP application that includes 3d 
functions built in, to allow the user to write 3D animation scripts. 
The 3D routines used in 3dTerp are based on HyperAct, Inc 
3dLib - a 3D library that was built to provide fast and easy 3D 
routines.

This tool can be used as a programming learning tool, simple 3D 
education tool or just plain fun!

The price is right - 3dTerp is free to use. The only 
restrictions that are applied to the tool's distribution is that it 
can not be sold separatly (It can be distributed as part of a 
Shareware or freeware collection), and that all the files that are 
described in the File List section are included.

Related Topics :

 Setup - Installing 3dTerp
 A Quick Look at 3dTerp operation
 Contact information
 Warranty
 File List - The files in the 3dTerp package

 3D Library routines


Setup - Installing 3dTerp
 
Simply copy the files that are included in the package and described 
in the File List section to a working directory of your choice.

Related Topics :
 A Quick Look at 3dTerp operation
 File List - The files in the 3dTerp package

 3dTerp - The PASTERP based 3d interpreter


A Quick Look at 3dTerp operation
 
The 3dTerp interpreter executable file is 3dTerp.exe.



                  3dterp, Page #   1   Date 8-12-1994 Thursday
                                    -    2 -






You activate this file with the name of the animation script file as 
the first parameter.

Assuming that you want to try the 3D Box moving demo animation script 
included in the file box3mv.trp, you will enter

3dterp box3mv

from the command line. The box3mv animation script will be read and 
interpreted by the 3dTerp program.

To create animation scripts by yourself, you will need to do the 
following things :

Create a simple ascii text file with an extension ".trp", with an 
ascii text editor of your choice. The Dos Edit editor or Turbo Pascal 
IDE are good examples of such editors.

The animation script must contain a procedure called "main", this is 
the procedure that is executed by the 3dTerp program after 
the script is read to memory.

The code you write in the main procedure (and optional 
other procedures) is PASTERP code. PASTERP is a simple language 
modeled after the Pascal language. If you are a seasoned Pascal 
programmer and would like to get your feet wet as soon as possible, we 
suggest that you inspect some of the *.TRP scripts provided with the 
3dTerp package, execute them using the 3dTerp 
program, and experiment with the PASTERP language by changing the code 
in these modules to create new animation patterns.

The PASTERP language is defined in the PASTERP.DOC file included with 
this package. The PASTERP.DOC file documents the standard and extended 
PASTERP libraries.

The 3D extensions to PASTERP that were added to 3dTerp are 
described in the "3D Library routines" section below.

Related Topics :
 PASTERP Language Reference
 3D Library routines



Contact information
 
Contact

        HyperAct, Inc.
        P.O.Box 5517
        Coralville IA 52241
        U.S.A




                  3dterp, Page #   2   Date 8-12-1994 Thursday
                                    -    3 -





        E-Mail      : Compuserve - 76350,333
        Phone/Fax   : (319) 351-8413

To contact the author directly please write to :

        E-Mail      : Compuserve - 100274,162
                      Internet - rloewy@panix.com

Related Topics :
 3dTerp - The PASTERP based 3d interpreter
 Warranty


Warranty
 
There is no warranty what so ever, The package is supplied as is,
The distributor (HyperAct, Inc.), or the author (Loewy Ron), are not,
and will not be responsible for any damages, lost profits,
or inconveniences caused by the use, or inability to use this package.
The use of the program is at your own risk.
By using (or attempting to use) the package you agree to this.

Related Topics :
 3dTerp - The PASTERP based 3d interpreter
 Contact information


File List - The files in the 3dTerp package
 
The following files are included with the 3dTerp package :

3dterp.exe      - The 3d interpreter program
3dterp.txt      - The 3dTerp documentation in text format.
3dterp.hlp      - The 3dTerp documentation in WinHelp format.
pasterp.txt     - The PASTERP documentation in text format.
pasterp.hlp     - The PASTERP documentation in WinHelp format.
box3mv.trp      - 3dTerp demo script.
box3mv2.trp     - 3dTerp demo script.
r2d2.trp        - 3dTerp demo script.
integv.trp      - 3dTerp demo script.
box.3d2         - a 3D box object.
pyr.3d2         - a 3D pyramide object.
prop.3d2        - a 3D prop object.
3do.exe         - 3D object compiler.
3do.txt         - 3D object compiler documentation.


3D Library routines
 
The 3dTerp program adds several procedures and functions to 
the PASTERP library, that allow you to load, display, and manipulate 
3D objects.

The 3D specific functions and procedures are :



                  3dterp, Page #   3   Date 8-12-1994 Thursday
                                    -    4 -






 procedure move3dObject
 procedure move3dObjectTo
 procedure paint3dObject
 procdeure position3dObject
 procedure rotate3dObject
 procedure scale3dObject
 procedure setColor
 procedure setPerspective
 procedure load3dObject


procedure load3dObject
 
procedure load3dObject(objName : string, objFile : string, color : 
byte);

This procedure loads a 3d object from a disk file, and associates a 
name to it. This name will later be used in functions that display and 
manipulate the 3d object.

Parameters

objName - This is the name that is associated to the 
object.

objFile - The Dos path to the object file.

color - The initial color of the object.



procedure setColor
 
procedure setColor(color : byte);

This procedure is used to set the color the object will be painted in.

Parameters

color - This is the color that will be used. The following 
values are allowed :

  Black         = 0
  Blue          = 1
  Green         = 2
  Cyan          = 3
  Red           = 4
  Magenta       = 5
  Brown         = 6
  LightGray     = 7
  DarkGray      = 8
  LightBlue     = 9
  LightGreen    = 10



                  3dterp, Page #   4   Date 8-12-1994 Thursday
                                    -    5 -





  LightCyan     = 11
  LightRed      = 12
  LightMagenta  = 13
  Yellow        = 14
  White         = 15


procedure paint3dObject
 
procedure paint3dObject(objName : string);

The paint3dObject is used to display the object on the screen in it's 
current color, position, scale and rotation attributes.

Parameters

objName - This is the name that is associated to the 
object.


procedure rotate3dObject
 
procedure rotate3dObject(objName : string, axis : string, deg : real);

This routine is used to rotate the object around a specified axis, by 
specified degrees.

Parameters

objName - This is the name that is associated to the 
object.

axis - This is the axis the object will be rotated around, 
allowed values are "X", "Y" and "Z".

deg - The degrees amount to rotate the object.


procedure move3dObject
 
procedure move3dObject(objName : string, axis : string, by : real);

This procedure is used to move an object along a specified axis.

Parameters

objName - This is the name that is associated to the 
object.

axis - This is the axis the object will be moved along, 
allowed values are "X", "Y" and "Z".

by - The amount of space units the object will be moved.




                  3dterp, Page #   5   Date 8-12-1994 Thursday
                                    -    6 -






procedure scale3dObject
 
procedure scale3dObject(objName : string, axis : string, scale : 
real);

This procedure is used to scale an object around a specified axis.

Related Topics

objName - This is the name that is associated to the 
object.

axis - This is the axis the object will be rotated around, 
allowed values are "X", "Y" and "Z".

scale - This is the scale the object will be changed by, 
if you want the object to be 125% of it's original size, use the value 
1.25.



procedure move3dObjectTo
 
procedure move3dObjectTo(objName : string, x : real, y : real, z : 
real);

This procedure moves the object's center of gravity to a specified 
point in space.

Parameters

objName - This is the name that is associated to the 
object.

x, y, z - These are the coordinates the object's center of 
gravity will be moved to.


procdeure position3dObject
 
procedure position3dObject(objName : string, var x : real, var y : 
real, var z : real);

This procedure is used to find out the current center of gravity 
coordinates of the object.

Parameters

objName - This is the name that is associated to the 
object.

x, y, z - These variable will be set to the object's 
center of gravity coordinates.



                  3dterp, Page #   6   Date 8-12-1994 Thursday
                                    -    7 -







procedure setPerspective
 
procedure setPerspective(perspective : boolean);

This procedure is used to define the draw mode - Perspective or 
standard.

Parameters

perspective - This parameters sets the display mode to 
Perspective or standard, Allowed values are true for Perspective, 
flase otherwise.











































                  3dterp, Page #   7   Date 8-12-1994 Thursday


                                 - INDEX-   1 -





load3dObject : 
 procedure load3dObject ...............................................      4
move3dObject : 
 procedure move3dObject ...............................................      5
move3dObjectTo : 
 procedure move3dObjectTo .............................................      6
paint3dObject : 
 procedure paint3dObject ..............................................      5
position3dObject : 
 procdeure position3dObject ...........................................      6
rotate3dObject : 
 procedure rotate3dObject .............................................      5
scale3dObject : 
 procedure scale3dObject ..............................................      5
setColor : 
 procedure setColor ...................................................      4
setPerspective : 
 procedure setPerspective .............................................      7







































                                 - INDEX-   1 -

