Defines | |
| #define | IABS(x) (((x) < 0) ? -(x) : (x)) |
| #define | EXCHG(a, b) |
| #define | SORT2(a, b) |
| #define | SCALE(var, arg, num, den) ((var) = ((arg) * (num)) / (den)) |
| #define | USCALE(var, arg, num, den) ((var) = ((unsigned)(arg) * (unsigned)(num)) / (unsigned)(den)) |
| #define | FSCALE(var, arg, num, den) ((var) = fixmuldiv((arg),(num),(den))) |
| #define | CLIPDOT(xx, yy, WHEN_OUTSIDE, WHEN_CLIPPED) |
| #define | CLIPHLINE(x1, x2, yy, WHEN_OUTSIDE, WHEN_CLIPPED) |
| #define | CLIPVLINE(xx, y1, y2, WHEN_OUTSIDE, WHEN_CLIPPED) |
| #define | CLIPBOX(x1, y1, x2, y2, WHEN_OUTSIDE, WHEN_CLIPPED) |
| #define | CLIPLINE(x1, y1, x2, y2, XMIN, YMIN, XMAX, YMAX, WHEN_OUTSIDE, WHEN_CLIPPED, MY_SCALE) |
|
|
Value: { \
if(x1 > x2) EXCHG(x1,x2); \
if(y1 > y2) EXCHG(y1,y2); \
if((x1 > XMAX) || (x2 < 0)) { WHEN_OUTSIDE; } \
if((y1 > YMAX) || (y2 < 0)) { WHEN_OUTSIDE; } \
if(x1 < 0) { x1 = 0; WHEN_CLIPPED; } \
if(y1 < 0) { y1 = 0; WHEN_CLIPPED; } \
if(x2 > XMAX) { x2 = XMAX; WHEN_CLIPPED; } \
if(y2 > YMAX) { y2 = YMAX; WHEN_CLIPPED; } \
}
|
|
|
Value: { \
if((xx > XMAX) || (xx < XMIN)) { WHEN_OUTSIDE; } \
if((yy > YMAX) || (yy < YMIN)) { WHEN_OUTSIDE; } \
}
|
|
|
Value: { \
if(x1 > x2) EXCHG(x1,x2); \
if((x1 > XMAX) || (x2 < XMIN)) { WHEN_OUTSIDE; } \
if((yy > YMAX) || (yy < YMIN)) { WHEN_OUTSIDE; } \
if(x1 < XMIN) { x1 = XMIN; WHEN_CLIPPED; } \
if(x2 > XMAX) { x2 = XMAX; WHEN_CLIPPED; } \
}
|
|
|
|
|
|
Value: { \
if(y1 > y2) EXCHG(y1,y2); \
if((xx > XMAX) || (xx < XMIN)) { WHEN_OUTSIDE; } \
if((y1 > YMAX) || (y2 < YMIN)) { WHEN_OUTSIDE; } \
if(y1 < YMIN) { y1 = YMIN; WHEN_CLIPPED; } \
if(y2 > YMAX) { y2 = YMAX; WHEN_CLIPPED; } \
}
|
|
|
Value: do { \ int __temp__ = (a); \ (a) = (b); \ (b) = __temp__; \ } while(0) |
|
|
|
|
|
|
|
|
|
|
|
Value: do { \ if((a) > (b)) EXCHG(a,b); \ } while(0) |
|
|
|
1.4.6