GRASS logo

NAME

g.pnmcomp - Overlays multiple PPM image files,

KEYWORDS

general, support, gui

SYNOPSIS

g.pnmcomp
g.pnmcomp help
g.pnmcomp input=name[,name,...] [mask=name[,name,...]] [opacity=float[,float,...]] output=name [output_mask=name] width=integer height=integer [bgcolor=name] [--overwrite] [--verbose] [--quiet]

Flags:

--overwrite
Allow output files to overwrite existing files
--verbose
Verbose module output
--quiet
Quiet module output

Parameters:

input=name[,name,...] [required]
Name of input raster map(s)
mask=name[,name,...]
Name of mask files
opacity=float[,float,...]
Layer opacities
output=name [required]
Name for output file
output_mask=name
Name for output mask file
width=integer [required]
Image width
height=integer [required]
Image height
bgcolor=name
Background color
Either a standard GRASS color, R:G:B triplet, or "none"
Default: white

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.

AUTHOR

Glynn Clements

Last changed: $Date: 2011-09-29 12:18:47 -0700 (Thu, 29 Sep 2011) $


Main index - General index - Full index

© 2003-2012 GRASS Development Team