| Top |
| #define | VIPS_RECT_RIGHT() |
| #define | VIPS_RECT_BOTTOM() |
| #define | VIPS_RECT_HCENTRE() |
| #define | VIPS_RECT_VCENTRE() |
| gboolean | vips_rect_isempty () |
| gboolean | vips_rect_includespoint () |
| gboolean | vips_rect_includesrect () |
| gboolean | vips_rect_equalsrect () |
| void | vips_rect_marginadjust () |
| void | vips_rect_intersectrect () |
| void | vips_rect_unionrect () |
| VipsRect * | vips_rect_dup () |
| void | vips_rect_normalise () |
gboolean
vips_rect_isempty (const VipsRect *r);
Is r
empty? ie. zero width or height.
gboolean vips_rect_includespoint (const VipsRect *r,int x,int y);
Does r
contain point (x
, y
)?
gboolean vips_rect_includesrect (const VipsRect *r1,const VipsRect *r2);
Is r2
a subset of r1
?
gboolean vips_rect_equalsrect (const VipsRect *r1,const VipsRect *r2);
Is r1
equal to r2
?
void vips_rect_marginadjust (VipsRect *r,int n);
Enlarge r
by n
. +1 means out one pixel.
void vips_rect_intersectrect (const VipsRect *r1,const VipsRect *r2,VipsRect *out);
Fill out
with the intersection of r1
and r2
. out
can equal r1
or r2
.
void vips_rect_unionrect (const VipsRect *r1,const VipsRect *r2,VipsRect *out);
Fill out
with the bounding box of r1
and r2
. out
can equal r1
or r2
.
VipsRect *
vips_rect_dup (const VipsRect *r);
Duplicate a rect to the heap. You need to free the result with vips_free().
void
vips_rect_normalise (VipsRect *r);
Make sure width and height are >0 by moving the origin and flipping the rect.
typedef struct {
int left;
int top;
int width;
int height;
} VipsRect;
A VipsRect is a rectangular area of pixels. This is a struct for performing simple rectangle algebra.