17 namespace TrackFindingCDC {
22 class SameSignChecker {
26 static bool sameSign(
double n1,
double n2)
28 return ((n1 > 0 and n2 > 0) or (n1 < 0 and n2 < 0));
32 static bool sameSign(
double n1,
double n2,
double n3,
double n4)
34 return ((n1 > 0 and n2 > 0 and n3 > 0 and n4 > 0) or
35 (n1 < 0 and n2 < 0 and n3 < 0 and n4 < 0));
39 static bool sameSign(
double n1,
double n2,
double n3,
double n4,
40 double n5,
double n6,
double n7,
double n8)
42 return ((n1 > 0 and n2 > 0 and n3 > 0 and n4 > 0 and
43 n5 > 0 and n6 > 0 and n7 > 0 and n8 > 0)
45 (n1 < 0 and n2 < 0 and n3 < 0 and n4 < 0 and
46 n5 < 0 and n6 < 0 and n7 < 0 and n8 < 0));
50 static bool isIn(
double x,
double y,
double x1,
double x2,
double y1,
double y2)
52 return sameSign(x - x1, x2 - x, y - y1, y2 - y);