64 lines
2.6 KiB
TeX
64 lines
2.6 KiB
TeX
|
\section{Built-in module \sectcode{imgfile}}
|
||
|
\bimodindex{imgfile}
|
||
|
|
||
|
The imgfile module allows python programs to access SGI imglib image
|
||
|
files (also known as \file{.rgb} files). The module is far from
|
||
|
complete, but is provided anyway since the functionality that there is
|
||
|
is enough in some cases. Currently, colormap files are not supported.
|
||
|
|
||
|
The module defines the following variables and functions:
|
||
|
|
||
|
\renewcommand{\indexsubitem}{(in module imgfile)}
|
||
|
\begin{excdesc}{error}
|
||
|
This exception is raised on all errors, such as unsupported file type, etc.
|
||
|
\end{excdesc}
|
||
|
|
||
|
\begin{funcdesc}{getsizes}{file}
|
||
|
This function returns a tuple \code{(\var{x}, \var{y}, \var{z})} where
|
||
|
\var{x} and \var{y} are the size of the image in pixels and
|
||
|
\var{z} is the number of
|
||
|
bytes per pixel. Only 3 byte RGB pixels and 1 byte greyscale pixels
|
||
|
are currently supported.
|
||
|
\end{funcdesc}
|
||
|
|
||
|
\begin{funcdesc}{read}{file}
|
||
|
This function reads and decodes the image on the specified file, and
|
||
|
returns it as a python string. The string has either 1 byte greyscale
|
||
|
pixels or 4 byte RGBA pixels. The bottom left pixel is the first in
|
||
|
the string. This format is suitable to pass to \code{gl.lrectwrite},
|
||
|
for instance.
|
||
|
\end{funcdesc}
|
||
|
|
||
|
\begin{funcdesc}{readscaled}{file\, x\, y\, filter\, blur}
|
||
|
This function is identical to read but it returns an image that is
|
||
|
scaled to the given \var{x} and \var{y} sizes. If the \var{filter} and
|
||
|
\var{blur} parameters are omitted scaling is done by
|
||
|
simply dropping or duplicating pixels, so the result will be less than
|
||
|
perfect, especially for computer-generated images.
|
||
|
|
||
|
Alternatively, you can specify a filter to use to smoothen the image
|
||
|
after scaling. The filter forms supported are \code{'impulse'},
|
||
|
\code{'box'}, \code{'triangle'}, \code{'quadratic'} and
|
||
|
\code{'gaussian'}. If a filter is specified \var{blur} is an optional
|
||
|
parameter specifying the blurriness of the filter. It defaults to \code{1.0}.
|
||
|
|
||
|
Readscaled makes no
|
||
|
attempt to keep the aspect ratio correct, so that is the users'
|
||
|
responsibility.
|
||
|
\end{funcdesc}
|
||
|
|
||
|
\begin{funcdesc}{ttob}{flag}
|
||
|
This function sets a global flag which defines whether the scan lines
|
||
|
of the image are read or written from bottom to top (flag is zero,
|
||
|
compatible with SGI GL) or from top to bottom(flag is one,
|
||
|
compatible with X). The default is zero.
|
||
|
\end{funcdesc}
|
||
|
|
||
|
\begin{funcdesc}{write}{file\, data\, x\, y\, z}
|
||
|
This function writes the RGB or greyscale data in \var{data} to image
|
||
|
file \var{file}. \var{x} and \var{y} give the size of the image,
|
||
|
\var{z} is 1 for 1 byte greyscale images or 3 for RGB images (which are
|
||
|
stored as 4 byte values of which only the lower three bytes are used).
|
||
|
These are the formats returned by \code{gl.lrectread}.
|
||
|
\end{funcdesc}
|