diff options
Diffstat (limited to 'Doc/libgl.tex')
-rw-r--r-- | Doc/libgl.tex | 197 |
1 files changed, 0 insertions, 197 deletions
diff --git a/Doc/libgl.tex b/Doc/libgl.tex deleted file mode 100644 index abbaf10..0000000 --- a/Doc/libgl.tex +++ /dev/null @@ -1,197 +0,0 @@ -\section{Built-in Module \module{gl}} -\label{module-gl} -\bimodindex{gl} - -This module provides access to the Silicon Graphics -\emph{Graphics Library}. -It is available only on Silicon Graphics machines. - -\strong{Warning:} -Some illegal calls to the GL library cause the Python interpreter to dump -core. -In particular, the use of most GL calls is unsafe before the first -window is opened. - -The module is too large to document here in its entirety, but the -following should help you to get started. -The parameter conventions for the C functions are translated to Python as -follows: - -\begin{itemize} -\item -All (short, long, unsigned) int values are represented by Python -integers. -\item -All float and double values are represented by Python floating point -numbers. -In most cases, Python integers are also allowed. -\item -All arrays are represented by one-dimensional Python lists. -In most cases, tuples are also allowed. -\item -\begin{sloppypar} -All string and character arguments are represented by Python strings, -for instance, -\code{winopen('Hi There!')} -and -\code{rotate(900, 'z')}. -\end{sloppypar} -\item -All (short, long, unsigned) integer arguments or return values that are -only used to specify the length of an array argument are omitted. -For example, the C call - -\begin{verbatim} -lmdef(deftype, index, np, props) -\end{verbatim} -% -is translated to Python as - -\begin{verbatim} -lmdef(deftype, index, props) -\end{verbatim} -% -\item -Output arguments are omitted from the argument list; they are -transmitted as function return values instead. -If more than one value must be returned, the return value is a tuple. -If the C function has both a regular return value (that is not omitted -because of the previous rule) and an output argument, the return value -comes first in the tuple. -Examples: the C call - -\begin{verbatim} -getmcolor(i, &red, &green, &blue) -\end{verbatim} -% -is translated to Python as - -\begin{verbatim} -red, green, blue = getmcolor(i) -\end{verbatim} -% -\end{itemize} - -The following functions are non-standard or have special argument -conventions: - -\begin{funcdesc}{varray}{argument} -%JHXXX the argument-argument added -Equivalent to but faster than a number of -\code{v3d()} -calls. -The \var{argument} is a list (or tuple) of points. -Each point must be a tuple of coordinates -\code{(\var{x}, \var{y}, \var{z})} or \code{(\var{x}, \var{y})}. -The points may be 2- or 3-dimensional but must all have the -same dimension. -Float and int values may be mixed however. -The points are always converted to 3D double precision points -by assuming \code{\var{z} = 0.0} if necessary (as indicated in the man page), -and for each point -\code{v3d()} -is called. -\end{funcdesc} - -\begin{funcdesc}{nvarray}{} -Equivalent to but faster than a number of -\code{n3f} -and -\code{v3f} -calls. -The argument is an array (list or tuple) of pairs of normals and points. -Each pair is a tuple of a point and a normal for that point. -Each point or normal must be a tuple of coordinates -\code{(\var{x}, \var{y}, \var{z})}. -Three coordinates must be given. -Float and int values may be mixed. -For each pair, -\code{n3f()} -is called for the normal, and then -\code{v3f()} -is called for the point. -\end{funcdesc} - -\begin{funcdesc}{vnarray}{} -Similar to -\code{nvarray()} -but the pairs have the point first and the normal second. -\end{funcdesc} - -\begin{funcdesc}{nurbssurface}{s_k, t_k, ctl, s_ord, t_ord, type} -% XXX s_k[], t_k[], ctl[][] -Defines a nurbs surface. -The dimensions of -\code{\var{ctl}[][]} -are computed as follows: -\code{[len(\var{s_k}) - \var{s_ord}]}, -\code{[len(\var{t_k}) - \var{t_ord}]}. -\end{funcdesc} - -\begin{funcdesc}{nurbscurve}{knots, ctlpoints, order, type} -Defines a nurbs curve. -The length of ctlpoints is -\code{len(\var{knots}) - \var{order}}. -\end{funcdesc} - -\begin{funcdesc}{pwlcurve}{points, type} -Defines a piecewise-linear curve. -\var{points} -is a list of points. -\var{type} -must be -\code{N_ST}. -\end{funcdesc} - -\begin{funcdesc}{pick}{n} -\funcline{select}{n} -The only argument to these functions specifies the desired size of the -pick or select buffer. -\end{funcdesc} - -\begin{funcdesc}{endpick}{} -\funcline{endselect}{} -These functions have no arguments. -They return a list of integers representing the used part of the -pick/select buffer. -No method is provided to detect buffer overrun. -\end{funcdesc} - -Here is a tiny but complete example GL program in Python: - -\begin{verbatim} -import gl, GL, time - -def main(): - gl.foreground() - gl.prefposition(500, 900, 500, 900) - w = gl.winopen('CrissCross') - gl.ortho2(0.0, 400.0, 0.0, 400.0) - gl.color(GL.WHITE) - gl.clear() - gl.color(GL.RED) - gl.bgnline() - gl.v2f(0.0, 0.0) - gl.v2f(400.0, 400.0) - gl.endline() - gl.bgnline() - gl.v2f(400.0, 0.0) - gl.v2f(0.0, 400.0) - gl.endline() - time.sleep(5) - -main() -\end{verbatim} -% -\section{Standard Modules \module{GL} and \module{DEVICE}} -\nodename{GL and DEVICE} -\stmodindex{GL} -\stmodindex{DEVICE} - -These modules define the constants used by the Silicon Graphics -\emph{Graphics Library} -that C programmers find in the header files -\file{<gl/gl.h>} -and -\file{<gl/device.h>}. -Read the module source files for details. |