MSTTY Command Set
Object Manipulation
------ ------------
Begin object {type} < create new object
DElete object < delete object subtree
End object < end object definition
INstance object {instance} < create instance of object
DUplicate object {asobject} < create copy of object
HIde {=obj} < make object invisibile
MOdify object < change ACTIVE object
REName object {newname} < change object name
SHow {=obj} < make object visible
XFer {object} newowner < transfer to new parent
Geometric Transformations
--------- ---------------
Move {=obj} xtran ytran ztran < translation
Pivot {=obj} X|Y|Z degrees < rotatation about local axis
REset {=obj} < reset(undo) transformations
Rotate {=obj} X|Y|Z degrees < rotate about global axis
Scale {=obj} factor < global scale
SHEar {=obj} axis1 axis2 value < shear in axis1 by value on axis2
STretch {=obj} X|Y|Z factor < single axis scale
XCOPy {=obj|obj} obj2 < copy transformation to obj2
XCONcat {=obj|obj} obj2 < concatenate trasformation onto obj2
Geometry Definition
-------------------
CONe < polygonal cone
CUBe < polygon cube
CYLinder < polygonal cylinder
PRIsm n < n sided polygonal prism
PYramid < polygonal pyramid
SELlipse a b < polygonal superelipsoid
SPHere < polygonal sphere
TRUncate {=obj} value < Set tcone Y-axis truncation value
Object Properties
------ ----------
COlor {=obj} r g b < r,g,b are normalized (0.0 - 1.0)
CUll {=obj} ON|OFf < remove back faces
PHong {=obj} ON|OFf < phong (smooth) shading
PProperty {=obj} property value < put property on property list
GProperty {=obj} property < get property
DProperty {=obj} property < delete property
Control
-------
RENder {=obj} < render object & all its children
HELp < display this file
NEws < list news file
QUit < exit program
TRace {+|-}All|Render|Device|Object|DEFine|DAta|Scan
File operations
---------------
DUmp {=obj} file {options} < dump geometry to a file
RESTore file < restore geometry from a file
REAd device file < read image onto device from file
WRite device file < write image from device to file
Status
------
ACTive < print active object path
CUrrent < <>
FRee < print remaining free storage
GEtx {=obj} < print composite transformation matrix
HUll [=obj] < print local hull of object
PRint {obj} {level} < print object tree
XFOrm {=obj} < print local transformation matrix
Camera Operations
------ ----------
ATTach {=cam} device < valid devices: AED, META, TTY,
HP, LIACOM, LIA1, RASTER, TEK, 'vfb'
CAMera {=obj} < create a new camera <>
CENter {=cam} x y < change center of projection
DISplay {=cam} Wireframe|Scanconvert|Raytrace
< set type of rendering
FIlter {=cam} r g b < color of filter (0.0 - 1.0)
LENs {=cam} degrees < set lens angle of camera
VIEwport {=cam} xleft ybottom xright ytop
< viewport of camera
Lights
------
INTensity {=obj} intensity < light intensity
FLAps {=obj} flap angle < <>
LIght {=light} < create a new light source
Device Operations
------ ----------
ANTialias indev outdev < copy and antialias image
AOi xl yb xr yt < set "area of interest"
COPy device1 device2 {oper} < copy image from device1 to device2
DELDevice vfb < delete virtual frame buffer
FRAme name resolution < create virtual frame buffer (vfb)
OPTion device option < set device option
QDevice device < inquire about device
RASTerop oper device r g b < apply raster operation to device
ZOom indev outdev factor < copy and zoom image
Macro and Meta commands
-----------------------
MACBegin name {arg1 ... argn} < begin macro defintion
MACEnd < end macro defintion
MACDel name < delete macro
MACEDit name < invoke editor on macro defintion
MACList < list all defined macro names
MACList name1 {name2 ... namen} < list defintion of named macros
MACSave file < write all macros to file
MACSave file {name1 ... namen} < write named macros to file
EXecute file {arg0 ... argn} < execute command file
LOCal var < define local variable
EXIt < exit command file or macro execution
REPeat n command < repeat command n times (&I)
FORsub {=obj} command < repeat command for each subobject (&Sub)
IF value command < execute command if value is not 0.0
IFN value command < execute command if value is 0.0
IFMac name command < excute command if macro 'name' exists
IFNMac name command < excute command if macro doesn't exist
IFOBj object command < exec command if object exists
IFNObj object command < exec command if object doesn't exists
IFDef var command < exec command if variable defined
IFNDef var command < exec command if variable not defined
TIME on/off < set execution time monitoring
PF n string < set PF key (327x terminals only)
QPF < query PF key setings
SET var expr < set arithmetic variable
SLEep seconds < delay program execution
> string < print error message (FSMS only)
>> string < print message
? < retrieve last command
?-n < retrieve n'th last command
?pattern < retrieve last command matching pattern
= < execute last command
=-n < execute n'th last command
=pattern < execute last command matching pattern
?= or == < display command history
!program < execute program
%program < execute program asynchronously
* comment < comment
{ command } < delay macro expansion until execution
e.g. forsub { pr &Sub }