74 #define D ((ax2-ax1)*(by1-by2) - (ay2-ay1)*(bx1-bx2))
75 #define D1 ((bx1-ax1)*(by1-by2) - (by1-ay1)*(bx1-bx2))
76 #define D2 ((ax2-ax1)*(by1-ay1) - (ay2-ay1)*(bx1-ax1))
78 #define SWAP(x,y) {int t; t=x; x=y; y=t;}
81 double bx1,
double by1,
double bx2,
double by2,
82 double *ra,
double *rb,
double *x,
double *
y)
92 *x = ax1 + (*ra) * (ax2 - ax1);
93 *y = ay1 + (*ra) * (ay2 - ay1);
94 return (*ra >= 0.0 && *ra <= 1.0 && *rb >= 0.0 && *rb <= 1.0);