home *** CD-ROM | disk | FTP | other *** search
/ Quake 'em / QUAKEEM.BIN / quake / programs / qube / area.h < prev    next >
Encoding:
Text File  |  1996-03-07  |  826 b   |  29 lines

  1.  
  2. typedef struct {
  3.     short int x1, y1, x2, y2;
  4. } Rect;
  5.  
  6. typedef struct {
  7.     int count;
  8.     int rectspace;
  9.     Rect bound;
  10.         Rect *rects;
  11. } Area;
  12.  
  13. Area *AreaCreate(void);
  14. void AreaDestroy(Area *a);
  15. Area *AreaCopy(Area *src);
  16.  
  17. Area *AreaUnionRect(Area *a, int x1, int y1, int x2, int y2);
  18. #define AreaOrRect(a, x1, y1, x2, y2) AreaUnionRect(a, x1, y1, x2, y2)
  19. Area *AreaIntersectRect(Area *a, int x1, int y1, int x2, int y2);
  20. #define AreaAndRect(a, x1, y1, x2, y2) AreaIntersectRect(a, x1, y1, x2, y2)
  21. Area *AreaSubRect(Area *a, int x1, int y1, int x2, int y2);
  22.  
  23. Area *AreaUnionArea(Area *a, Area *b);
  24. #define AreaOrArea(a, x1, y1, x2, y2) AreaUnionArea(a, b)
  25. Area *AreaIntersectArea(Area *a, Area *b);
  26. #define AreaAndArea(a, x1, y1, x2, y2) AreaIntersectArea(a, b)
  27. Area *AreaSubArea(Area *a, Area *b);
  28.  
  29.