From p.murrell at auckland.ac.nz  Tue Dec  1 02:17:58 2009
From: p.murrell at auckland.ac.nz (Paul Murrell)
Date: Tue, 01 Dec 2009 14:17:58 +1300
Subject: [Rd] raster support in graphics devices
Message-ID: <4B146EC6.2000502@auckland.ac.nz>

Hi

This is for developers of extension packages that provide extra 
*graphics devices* for R.

In the *development* version of R, support has been added to the 
graphics engine for sending raster images (bitmaps) to a graphics 
device.  This consists mainly of two new device functions:  dev_Raster() 
and dev_Cap().

The R_GE_version constant (in GraphicsEngine.h) has been bumped up to 6 
as a marker of this change.

This means that, at a minimum, all graphics devices should be updated to 
provide dummy implementations of these new functions that just say the 
feature is not yet implemented (see for example the PicTeX and XFig 
devices in the 'grDevices' package).

A full implementation of dev_Raster() should be able to draw a raster 
image (provided as an array of 32-bit R colors) at any size, possibly 
(bilinear) interpolated (otherwise nearest-neighbour), at any 
orientation, and with a per-pixel alpha channel.  Where these are not 
natively supported by a device, the graphics engine provides some 
routines for scaling and rotating raster images (see for example the X11 
device).  The dev_Cap() function should return a representation of a 
raster image captured from the current device.  This will only make 
sense for some devices (see for example the Cairo device in the 
'grDevices' package).

A little more information and a couple of small examples are provided at
http://developer.r-project.org/Raster/raster-RFC.html

Paul
-- 
Dr Paul Murrell
Department of Statistics
The University of Auckland
Private Bag 92019
Auckland
New Zealand
64 9 3737599 x85392
paul at stat.auckland.ac.nz
http://www.stat.auckland.ac.nz/~paul/



[Rd] raster support in graphics devices
Paul Murrell