private static void EdgeEvent(DTSweepContext tcx, DTSweepConstraint edge, AdvancingFrontNode node) { try { tcx.EdgeEvent.ConstrainedEdge = edge; tcx.EdgeEvent.Right = (edge.P.X > edge.Q.X); bool flag = DTSweep.IsEdgeSideOfTriangle(node.Triangle, edge.P, edge.Q); if (!flag) { DTSweep.FillEdgeEvent(tcx, edge, node); DTSweep.EdgeEvent(tcx, edge.P, edge.Q, node.Triangle, edge.Q); } } catch (PointOnEdgeException ex) { Debug.WriteLine("Skipping Edge: " + ex.Message); } }