void findDiagonals(Int total_num_edges, directedLine **sortedVertices, sweepRange **ranges, Int &num_diagonals, directedLine **diagonal_vertices)
sweepRange * sweepRangeMake(directedLine *left, Int leftType, directedLine *right, Int rightType)
Int cuspType(directedLine *v)
Int isBelow(directedLine *v, directedLine *e)
Int sweepRangeEqual(sweepRange *sr1, sweepRange *sr2)
Int isAbove(directedLine *v, directedLine *e)
directedLine * partitionY(directedLine *polygons, sampledLine **retSampledLines)
void sweepRangeDelete(sweepRange *range)
void sweepY(Int nVertices, directedLine **sortedVerteces, sweepRange **ret_ranges)
directedLine ** DBGfindDiagonals(directedLine *polygons, Int &num_diagonals)