statusCompare method

int? statusCompare(
  1. EventNode? ev1,
  2. EventNode? ev2
)

Implementation

int statusCompare(EventNode ev1, EventNode ev2) {
  var a1 = ev1.seg.start;
  var a2 = ev1.seg.end;
  var b1 = ev2.seg.start;
  var b2 = ev2.seg.end;

  if (Epsilon().pointsCollinear(a1, b1, b2)) {
    if (Epsilon().pointsCollinear(a2, b1, b2))
      return 1; //eventCompare(true, a1, a2, true, b1, b2);

    return Epsilon().pointAboveOrOnLine(a2, b1, b2) ? 1 : -1;
  }

  return Epsilon().pointAboveOrOnLine(a1, b1, b2) ? 1 : -1;
}