3 addpt, subpt, mulpt, divpt, rectaddpt, rectsubpt, insetrect, canonrect, eqpt, eqrect, ptinrect, rectinrect, rectXrect, rectclip, combinerect, Dx, Dy, Pt, Rect, Rpt \- arithmetic on points and rectangles
12 Point addpt(Point p, Point q)
15 Point subpt(Point p, Point q)
18 Point mulpt(Point p, int a)
21 Point divpt(Point p, int a)
24 Rectangle rectaddpt(Rectangle r, Point p)
27 Rectangle rectsubpt(Rectangle r, Point p)
30 Rectangle insetrect(Rectangle r, int n)
33 Rectangle canonrect(Rectangle r)
36 int eqpt(Point p, Point q)
39 int eqrect(Rectangle r, Rectangle s)
42 int ptinrect(Point p, Rectangle r)
45 int rectinrect(Rectangle r, Rectangle s)
48 int rectXrect(Rectangle r, Rectangle s)
51 int rectclip(Rectangle *rp, Rectangle b)
54 void combinerect(Rectangle *rp, Rectangle b)
63 Point Pt(int x, int y)
66 Rectangle Rect(int x0, int y0, int x1, int y1)
69 Rectangle Rpt(Point p, Point q)
76 construct geometrical data types from their components.
85 difference of its arguments:
104 returns the Rectangle
111 returns the Rectangle
112 .BI Rect( r .min.x+ n \f1,
115 .IB r .max.y- n ) \f1.
118 returns a rectangle with the same extent as
120 canonicalized so that
130 compares its argument Points and returns
134 does the same for its argument Rectangles.
144 returns 1 if all the pixels in
155 share any point, and 0 otherwise.
159 the Rectangle pointed to by
161 so that it is completely contained within
163 The return value is 1 if any part of
167 Otherwise, the return value is 0 and
174 with the smallest rectangle sufficient to cover all the pixels of
183 give the width (Δx) and height (Δy) of a Rectangle.
184 They are implemented as macros.