GRASS GIS 7 Programmer's Manual  7.9.dev(2021)-e5379bbd7
cairodriver/raster.c File Reference

GRASS cairo display driver - draw raster. More...

#include <math.h>
#include "cairodriver.h"
#include <grass/glocale.h>
Include dependency graph for cairodriver/raster.c:

Go to the source code of this file.

Macros

#define MAX_IMAGE_SIZE   32767
 
#define MIN(a, b)   ((a)<(b)?(a):(b))
 
#define MAX(a, b)   ((a)>(b)?(a):(b))
 

Functions

void Cairo_begin_raster (int mask, int s[2][2], double d[2][2])
 Start drawing raster. More...
 
int Cairo_raster (int n, int row, const unsigned char *red, const unsigned char *grn, const unsigned char *blu, const unsigned char *nul)
 Draw raster row. More...
 
void Cairo_end_raster (void)
 Finish drawing raster. More...
 

Detailed Description

GRASS cairo display driver - draw raster.

(C) 2007-2014 by Lars Ahlzen and the GRASS Development Team

This program is free software under the GNU General Public License (>=v2). Read the file COPYING that comes with GRASS for details.

Author
Lars Ahlzen <lars ahlzen.com> (original contibutor)
Glynn Clements

Definition in file cairodriver/raster.c.

Macro Definition Documentation

◆ MAX

#define MAX (   a,
  b 
)    ((a)>(b)?(a):(b))

Definition at line 25 of file cairodriver/raster.c.

◆ MAX_IMAGE_SIZE

#define MAX_IMAGE_SIZE   32767

Definition at line 20 of file cairodriver/raster.c.

◆ MIN

#define MIN (   a,
  b 
)    ((a)<(b)?(a):(b))

Definition at line 22 of file cairodriver/raster.c.

Function Documentation

◆ Cairo_begin_raster()

void Cairo_begin_raster ( int  mask,
int  s[2][2],
double  d[2][2] 
)

Start drawing raster.

Todo:
are top and left swapped?
Parameters
masknon-zero int for mask
ssource (map) extent (left, right, top, bottom)
ddestination (image) extent (left, right, top, bottom)

Definition at line 76 of file cairodriver/raster.c.

◆ Cairo_end_raster()

void Cairo_end_raster ( void  )

Finish drawing raster.

Definition at line 180 of file cairodriver/raster.c.

References cairo, and G_debug().

◆ Cairo_raster()

int Cairo_raster ( int  n,
int  row,
const unsigned char *  red,
const unsigned char *  grn,
const unsigned char *  blu,
const unsigned char *  nul 
)

Draw raster row.

Parameters
nnumber of cells
rowraster row (starting at 0)
red,grn,blu,nulred,green,blue and null value
Returns
next row

Definition at line 132 of file cairodriver/raster.c.