code: function intersects (data, p1, q1, p2, q2) {
    return orient(data, p1, q1, p2) !== orient(data, p1, q1, q2) &&
      orient(data, p2, q2, p1) !== orient(data, p2, q2, q1)
  }
docs: check if two segments intersect