Geomview

Section: User Commands (1)
Updated: September 28, 1993
Index Return to Main Contents
 

NAME

Geomview - interactive geometry viewer  

SYNOPSIS


geomview [ -b r g b ] [-c commandfile] [-wins #windows ] [-nopanels]
        [-wpos xmin ymin xsize ysize] [-wpos -]
        [-wpos xsize,ysize[@xmin,ymin]] [-e external-module-name]
        [-M[cg][sp] pipename]
        [-start external-module-name [arg ...] --]
        [-run external-module-path [arg ...] --] [ file ... ]

 

DESCRIPTION

Geomview is an interactive geometry viewer written at the Geometry Center. It displays the objects in the files given on the command line and allows the user to view and manipulate them interactively.

The present version (1.4) of geomview runs on Silicon Graphics Irises and NeXT workstations. We are very interested in hearing about any problems you may have using it; see below for information on how to contact us.

In addition to providing interacive control over a world of objects via the mouse and keyboard, geomview has an interpreted language of commands for controlling almost every aspect of its display. It can execute files containing statements in this language, and it can communicate with other programs using the language. See geomview(5), e.g. the file man/cat5/geomview.5 in the geomview distribution, for more details of the language.

 

TUTORIAL

This manual page serves only as a (very) terse reference manual for geomview. For a gentler introduction to the program and the format of the data files it can read, see the documents "overview" and "oogltour" in the "doc" directory of the geomview distribution. There is a also tutorial for how to write external modules in the "src/bin/example" directory (available only in the source distribution).

 

OPTIONS

-b
Set the window background color to the given r g b values.
-c
Interpret the commands in commandfile, which may be ``-'' for standard input. The command language is described in geomview(5). Commands may be supplied literally, as in ``-c "(ui-panel main off)"''; since they include parentheses, they must be quoted.
-wins
Causes geomview to initially display #windows camera windows.
-wpos
Specifies the initial location and size of the first camera window. With ``-'', you are prompted for window placement.
-M objectname

 Display (possibly dynamically changing) geometry (or commands) sent via ``togeomview [-c] objectname [file]'' or ``geomstuff objectname file ...''. The data appears as a geomview object named objectname.

Actually listens to the named pipe ``/tmp/geomview/objectname''; you can achieve the same effect with the shell commands:

    mkdir /tmp/geomview; 
    mknod /tmp/geomview/objectname p
(assuming the directory and named pipe don't already exist), then executing the geomview command:

    (geometry objectname  < /tmp/geomview/objectname)
Note: on the NeXT, -M listens on a UNIX-domain socket rather than a named pipe.

-M[cg][sp] pipename
The -M option accepts modifiers: a 'g' suffix expects geometry data (the default), while 'c' suffix expects gcl commands. A 'p' implies the connection should use a named pipe (the default on the Iris), while 's' implies using a UNIX-domain socket (default on the NeXT). So -Mcs fred selects reading commands from the UNIX-domain socket named /tmp/geomview/fred.
-nopanels
Start up displaying no panels, only graphics windows. Panels may be invoked later as usual with the "Px" keyboard shortcuts or "(ui-panel ...)" command.
-e modulename
Start an external module; modulename is the name associated with the module, appearing in the main panel's Applications browser, as defined by the emodule-define command (see geomview(5) for details).
-start modulename arguments ... --
Like -e but allows you to pass arguments to the external module. "--" signals the end of the argument list; the "--" may be omitted if it would be the last argument on the geomview command line.
-run shell-command arguments ...
Like -start but takes the pathname of executable of the external module instead of the module's name.

 

GEOMETRY FILE FORMATS

The format of the files read by geomview is described in oogl(5); type "man 5 oogl", or see the file man/cat5/oogl.5 in the geomview distribution, for details.

Note to users of MinneView (the precursor to geomview): geomview can read MinneView files, but MinneView cannot read all geomview files.

 

STARTUP FILES

Immediately upon starting up geomview reads and executes the commands in the system-wide .geomview file in the "data" subdirectory of the geomview directory. Then, if there is a file named .geomview in the current directory, it executes the commands in that file. If no in the user's home directory, and executes it if found. The startup file of an individual user overrides the systemwide defaults, since later commands take precedence over earlier ones.

 

EXTERNAL MODULES

Geomview has the ability to interact via its command language with other programs, called "external modules". Many such modules have been written and appear in the "Application" browser in the main geomview panel. To invoke a module you click the mouse on the module's entry in this browser. This starts the module and adds an addition red entry to the browser which represents the running instance of that module. You can terminate the module by clicking on the red entry. Modules are documented separately from geomview. See the manual page for each module for details.

 

INSTALLING AN EXTERNAL MODULE

Geomview looks for external modules in a special directory for modules. In the geomview distribution tree this is the "bin/sgi" subdirectory. A module consists of two files: the executable program, and a "module init file", which is a whose name is ".geomview-" followed by the module name. The module init file tells geomview how to run that program. Be sure to always keep these two files together; geomview needs both of them in order to run the module. To install a new module, simply put the module's executable file and its init file in your geomview's module directory. The next time you run geomview, it will know about that module.

Geomview can actually looks for modules in a list of directories; by default only the "bin/sgi" directory is on this list. See the set-emodule-path command in geomview(5) for details.

There is a tutorial for how to write external modules in the "src/bin/example" directory.

 

EXTERNAL MODULE INIT FILES

An external module init file is the file that tells geomview how to run that module. Its name must be ".geomview-" followed by the name of the module, e.g. ".geomview-foo". It should contain geomview commands; typically it will contain a single emodule-define command which enters the module into geomview's application browser:


        (emodule-define "Foo" "foo")

The first string is the name that appears in the browser. The second string is the command to invoke the module. It may contain arguments; in fact it can be an arbitrary shell command.

 

KEYBOARD SHORTCUTS

Many geomview operations are available from the keyboard. Hitting the "?" button on the main panel, or typing "?" with the cursor in any window, causes geomview to print a message on standard output listing all the keyboard shortcuts.

Keyboard commands apply while cursor is in any graphics window and most 
control panels. Most commands allow one of the following selection prefixes 
(if none is provided the command applies to the current object): 
   g  world geom        g#  #'th geom   g*  All geoms
   c  current camera    c#  #'th camera c*  All cameras
Many allow a numeric prefix:  if none they toggle or reset current value. 
Appearance:
 Draw:               Shading:           Other:
  af  Faces             0as Constant     av  eVert normals: always face viewer
  ae  Edges             1as Flat        #aw  Line Width (pixels)
  an  Normals           2as Smooth      #ac  edges Closer than faces(try 5-100)
  ab  Bounding Boxes    aV draw Vectors  ax  remove object's Appearance
 Color:                                  aT  allow transparency
  Cf Ce Cn Cb CB   face/edge/normal/bbox/backgnd
Motions:                                      Viewing:
  r rotate         [ Leftmouse=X-Y plane,       0vp Orthographic view
  t translate        Middle=Z axis,             1vp Perspective view
  z zoom             Shift=slow motion,          vd Draw other views' cameras
  f fly              in r/t modes.      ]       #vv field of View
  s scale           [Left=turn, Middle=speed ]  #vn near clip distance
                                                #vf far clip distance
  w/W recenter/all                               v+ add new camera
  h/H halt/halt all                              vx cursor on/off
  @  select center of motion (e.g. g3@)          vb backfacing poly cull on/off
show Panel:     Pm Pa Pl Po     main/appearance/lighting/obscure
                Pt Pc PC Pf     tools/cameras/Commands/file-browser
                Ps P-           saving/read commands from tty
Lights:         ls le           Show lights / Edit Lights
Metric:  me mh mo ms    Euclidean Hyperbolic OutsideHyp Spherical
Other:
  #N normalization: 0N none, 1N each, 2N all    < load geometry/command file
  dd delete current object                      >/Ps save state to file
  TV NTSC mode toggle   p/(rightmouse doubleclick) pick as current target object

Renderman:
  RR send RIB output to <fileprefix>NNN.rib (default fileprefix == "geom")
  RC Emulate lines using cylinders (default)
  RP Emulate lines using polygons
  Ra choose ASCII RIB format (default)
  Rb choose BINARY RIB format
  RD Toggle display type (.tiff file or onscreen window)

 

NOTES

The "geomview" command is actually a shell script that sets various environment variables which tell geomview about your local setup, and then invokes the geomview executable program "gvx". Do not run "gvx" by itself; always invoke geomview with the "geomview" shell script.

 

SEE ALSO

oogl(5) - OOGL geometric file formats and conventions
geomview(5) - geomview command language reference  

FILES


data/.geomview - default initialization file in geomview command language

data/geom - sample data files  

AUTHORS

   Stuart Levy              Tamara Munzner         Mark Phillips
slevy@geom.umn.edu       munzner@geom.umn.edu     mbp@geom.umn.edu

             Celeste Fowler              Nathaniel Thurston
          fowler@geom.umn.edu             njt@geom.umn.edu


       The National Science and Technology Research Center for
        Computation and Visualization of Geometric Structures
                        (The Geometry Center)
                       University of Minnesota
                       1300 South Second Street
                     Minneapolis, MN  55454  USA

                        software@geom.umn.edu
 

BUGS

Sometimes core dumps on bad input files.

Zoom and scale have no inertia.

Constrained motion (to X or Y axis) no longer works.

Spherical mode doesn't work on VGXes.

If you find a bug, please let us know about it by sending email to software@geom.umn.edu, or by contacting us at the address above.


 

Index

NAME
SYNOPSIS
DESCRIPTION
TUTORIAL
OPTIONS
GEOMETRY FILE FORMATS
STARTUP FILES
EXTERNAL MODULES
INSTALLING AN EXTERNAL MODULE
EXTERNAL MODULE INIT FILES
KEYBOARD SHORTCUTS
NOTES
SEE ALSO
FILES
AUTHORS
BUGS

This document was created by man2html, using the manual pages.
Time: 01:37:00 GMT, December 05, 2024