NAMEg.pnmcomp - Overlays multiple PPM image files
SYNOPSISg.pnmcomp g.pnmcomp help g.pnmcomp input=string[,string,...] [mask=string[,string,...]] [opacity=float[,float,...]] output=string [outmask=string] width=integer height=integer [background=string] [--verbose] [--quiet] Parameters: input=string[,string,...] Names of input files mask=string[,string,...] Names of mask files opacity=float[,float,...] Layer opacities output=string Name of output file outmask=string Name of output mask file width=integer Image width height=integer Image height background=string Background color
DESCRIPTION(culled from the mailing list) From: Glynn Clements Subject: Re: [GRASS5] Re: [GRASSLIST:10403] Transparency added Date: Sun, 19 Feb 2006 20:17:59 +0000 g.pnmcomp isn't meant for end users. It's an internal tool for use by a Tcl/Tk GUI. In essence, g.pnmcomp generates a PPM image by overlaying a series of PPM/PGM pairs (PPM = RGB image, PGM = alpha channel). The intention is that d.* programs will emit PPM/PGM pairs (by way of the PNG-driver code being integrated into libraster). The GUI will manage a set of layers; each layer consists of the data necessary to generate a PPM/PGM pair. Whenever the layer "stack" changes (by adding, removing, hiding, showing or re-ordering layers), the GUI will render any layers for which it doesn't already have the PPM/PGM pair, then re-run g.pnmcomp to generate the final image (just redoing the composition is a lot faster than redrawing everything). A C/C++ GUI would either have g.pnmcomp's functionality (image composition) built-in, or would use the system's graphics API to perform composition (for translucent layers, you would need OpenGL or the Render extension, or something else which supports translucent rendering). Tk doesn't support transparent (masked) true-colour images (it does support transparent GIFs, but that's limited to 256 colours), and an image composition routine in Tcl would be unacceptably slow, hence the existence of g.pnmcomp.
AUTHORGlynn Clements Last changed: $Date: 2006-03-01 11:02:32 +0100 (Wed, 01 Mar 2006) $ Full index (C) 2003-2010 GRASS Development Team G.PNMCOMP(1)