geomutil(3gv)geomutil(3gv)NAME
geomutil - various geometry utilities (introduction)
DESCRIPTION
The geomutil library contains a collection of miscellaneous geometric utility functions:
AnyToPL() - convert any geom to a polylist
PLCombine() - combine two polylists into one
PLConsol() - consolidate vertices in a polylist
Bdy() - generate the boundary (edge) of a geom
Each function has its own manual page which gives usage details.
To link your program with the geomutil library you should specify -lgeomutil followed by the usual list of OOGL libraries, as in
cc -L${LIBDIR} prog.c -lgeomutil-lstubdraw -lgeom -lvect -lpolylist -lquad-lmesh -lbezier -linst -ltlist -llist -lstub
-lgeom -loogl -lbbox -lshade -lcolor -l3d -lm
SEE ALSO anytopl(3), plcombine(3), plconsol(3), bdy(3), anytooff(1),
offcombine(1), offconsol(1), bdy(1), geomview(1)AUTHOR
Celeste Fowler
The Geometry Center
Geometry Center July 10, 1992 geomutil(3gv)
Check Out this Related Man Page
TOGEOMVIEW(1gv)TOGEOMVIEW(1gv)NAME
togeomview - send commands or OOGL objects to geomview
SYNOPSIS
togeomview [-c] [-g] [pipename [program args ...]]
DESCRIPTION
togeomview sends a stream of geomview commands, or OOGL-format geometric data, to a cooperating copy of geomview. If geomview is not run-
ning, it is automatically started. ('geomview' must be on the $PATH of the user running 'togeomview' in order for this to work.)
Typical usage is:
someprogram | togeomview (to send commands) or
someprogram-generating-OOGL-data | togeomview -g (to send geometry)
i.e. a program pipes geometric data into ``togeomview''; the data is displayed by a copy of geomview run with the -M option and a name
matching the one given to togeomview.
Togeomview uses a named pipe in the directory /tmp/geomview to communicate with geomview. If unspecified, the pipe's default name is
"OOGL". When sending geometry (-g), a geomview object with the same name as the pipe appears in geomview's object browser.
By default, when no suitable copy of geomview is running, togeomview invokes "geomview" with arguments specifying the appropriate named
pipe. A different command may be specified as in:
togeomview OOGL gv -wpos 300x300 -c my_startup_script
which communicates through a pipe named OOGL, and (if necessary) invokes the given gv command. The pipe name is required if a command is
specified.
After togeomview has created it, the named pipe may be written as an ordinary file. For example, one could use
togeomview pipename < /dev/null
to invoke a listening copy of geomview, and then run a program which simply wrote to /tmp/geomview/pipename.
FILES
/tmp/geomview
BUGS
The pipe-based communications scheme imposes several restrictions.
If no copy of geomview is reading from the pipe, or if geomview gets far enough behind, a program writing data to ``togeomview'' will be
forced to block after sending a few kilobytes.
Because of the buffering in the pipe, the sender may be substantially ahead of the geomview display.
If geomview exits, the sending program receives a write-on-broken-pipe (SIGPIPE) signal, which will kill it unless measures are taken to
catch or ignore that signal.
Only one copy of geomview can read from a given pipe at a time. If a second copy attempts to read from it, both will probably fail. It's
fine to have multiple copies of geomview reading from different pipes.
Note that togeomview will invoke geomview if no extant copy is listening to the relevant pipe; it can't connect to an existing copy of
geomview started by other means.
SEE ALSO geomview(1), oogl(5)Geometry Center 21 May 1993 TOGEOMVIEW(1gv)