66 lines
1.8 KiB
Groff
66 lines
1.8 KiB
Groff
|
.TH MACROS 3 "11 April 1990"
|
||
|
.SH NAME
|
||
|
IM_REGION_ADDR,
|
||
|
IM_REGION_LSKIP,
|
||
|
IM_REGION_N_ELEMENTS, IM_REGION_SIZEOF_LINE \-
|
||
|
macros for regions
|
||
|
.SH SYNOPSIS
|
||
|
.B #include <vips/vips.h>
|
||
|
.br
|
||
|
.B #include <vips/region.h>
|
||
|
|
||
|
int IM_REGION_LSKIP( reg )
|
||
|
.br
|
||
|
REGION *reg;
|
||
|
|
||
|
int IM_REGION_N_ELEMENTS( reg )
|
||
|
.br
|
||
|
REGION *reg;
|
||
|
|
||
|
int IM_REGION_SIZEOF_LINE( reg )
|
||
|
.br
|
||
|
REGION *reg;
|
||
|
|
||
|
char *IM_REGION_ADDR( reg, x, y )
|
||
|
.br
|
||
|
REGION *reg;
|
||
|
.br
|
||
|
int x, y;
|
||
|
|
||
|
.SH DESCRIPTION
|
||
|
These macros help to simplify address arithmetic for regions.
|
||
|
|
||
|
IM_REGION_LSKIP(3) returns the number of *bytes* you should add to move
|
||
|
down a scan line. Remember that if your pointer has been cast to the type
|
||
|
of the image pels, this will not be the correct amount to add! The value
|
||
|
lskip returns can be changed by a call to im_prepare(3).
|
||
|
|
||
|
IM_REGION_N_ELEMENTS(3) returns the number of band elements across the region.
|
||
|
|
||
|
IM_REGION_SIZEOF_LINE(3) returns sizeof( horizontal line across region ).
|
||
|
|
||
|
IM_REGION_ADDR(3) returns a pointer to the pixel at position (x,y) in the
|
||
|
image on which reg has been defined. The point (x,y) should lie within the
|
||
|
valid area for this region.
|
||
|
|
||
|
If the macro DEBUG has been defined, then IM_REGION_ADDR(3) will also
|
||
|
perform bounds checking. If you ask for the address of a pel outside the rect
|
||
|
reg->valid, then IM_REGION_ADDR(3) will print an error message of the form:
|
||
|
|
||
|
IM_REGION_ADDR: point out of bounds, file "test.c", line 18
|
||
|
(point x=50, y=0
|
||
|
should have been within Rect left=0, top=0, width=50, height=50)
|
||
|
|
||
|
and call abort(3).
|
||
|
|
||
|
DEBUG needs to be defined *before* region.h is included. Either define DEBUG
|
||
|
with -D in your Makefile, or have a #define DEBUG right at the top of your
|
||
|
file.
|
||
|
|
||
|
.SH COPYRIGHT
|
||
|
National Gallery, 1993
|
||
|
.SH SEE ALSO
|
||
|
im_malloc(3), im_open_local(3).
|
||
|
.SH AUTHOR
|
||
|
J. Cupitt \- 23/7/93
|