.TH g.pnmcomp 1grass "" "GRASS 6.4.4" "Grass User's Manual" .SH NAME \fI\fBg.pnmcomp\fR\fR - Overlays multiple PPM image files .SH KEYWORDS general, gui .SH SYNOPSIS \fBg.pnmcomp\fR .br \fBg.pnmcomp help\fR .br \fBg.pnmcomp input\fR=\fIstring\fR[,\fIstring\fR,...] [\fBmask\fR=\fIstring\fR[,\fIstring\fR,...]] [\fBopacity\fR=\fIfloat\fR[,\fIfloat\fR,...]] \fBoutput\fR=\fIstring\fR [\fBoutmask\fR=\fIstring\fR] \fBwidth\fR=\fIinteger\fR \fBheight\fR=\fIinteger\fR [\fBbackground\fR=\fIstring\fR] [\-\-\fBverbose\fR] [\-\-\fBquiet\fR] .SS Parameters: .IP "\fBinput\fR=\fIstring[,\fIstring\fR,...]\fR" 4m .br Names of input files .IP "\fBmask\fR=\fIstring[,\fIstring\fR,...]\fR" 4m .br Names of mask files .IP "\fBopacity\fR=\fIfloat[,\fIfloat\fR,...]\fR" 4m .br Layer opacities .IP "\fBoutput\fR=\fIstring\fR" 4m .br Name of output file .IP "\fBoutmask\fR=\fIstring\fR" 4m .br Name of output mask file .IP "\fBwidth\fR=\fIinteger\fR" 4m .br Image width .IP "\fBheight\fR=\fIinteger\fR" 4m .br Image height .IP "\fBbackground\fR=\fIstring\fR" 4m .br Background color .PP .SH DESCRIPTION (culled from the mailing list) .br \fC .DS .br From: Glynn Clements .br Subject: Re: [GRASS5] Re: [GRASSLIST:10403] Transparency added .br Date: Sun, 19 Feb 2006 20:17:59 +0000 .br .br g.pnmcomp isn't meant for end users. It's an internal tool for use by .br a Tcl/Tk GUI. .br .br In essence, g.pnmcomp generates a PPM image by overlaying a series of .br PPM/PGM pairs (PPM = RGB image, PGM = alpha channel). .br .br The intention is that d.* programs will emit PPM/PGM pairs (by way of .br the PNG-driver code being integrated into libraster). The GUI will .br manage a set of layers; each layer consists of the data necessary to .br generate a PPM/PGM pair. .br .br Whenever the layer "stack" changes (by adding, removing, hiding, .br showing or re-ordering layers), the GUI will render any layers for .br which it doesn't already have the PPM/PGM pair, then re-run g.pnmcomp .br to generate the final image (just redoing the composition is a lot .br faster than redrawing everything). .br .br A C/C++ GUI would either have g.pnmcomp's functionality (image .br composition) built-in, or would use the system's graphics API to .br perform composition (for translucent layers, you would need OpenGL or .br the Render extension, or something else which supports translucent .br rendering). .br .br Tk doesn't support transparent (masked) true-colour images (it does .br support transparent GIFs, but that's limited to 256 colours), and an .br image composition routine in Tcl would be unacceptably slow, hence .br the existence of g.pnmcomp. .br .DE \fR .SH AUTHOR Glynn Clements .PP \fILast changed: $Date: 2011-11-08 12:29:50 +0100 (Tue, 08 Nov 2011) $\fR .PP Full index .PP © 2003-2014 GRASS Development Team