Functions |
void | qh_all_merges (boolT othermerge, boolT vneighbors) |
void | qh_appendmergeset (facetT *facet, facetT *neighbor, mergeType mergetype, realT *angle) |
setT * | qh_basevertices (facetT *samecycle) |
void | qh_checkconnect (void) |
boolT | qh_checkzero (boolT testall) |
int | qh_compareangle (const void *p1, const void *p2) |
int | qh_comparemerge (const void *p1, const void *p2) |
int | qh_comparevisit (const void *p1, const void *p2) |
void | qh_copynonconvex (ridgeT *atridge) |
void | qh_degen_redundant_facet (facetT *facet) |
void | qh_degen_redundant_neighbors (facetT *facet, facetT *delfacet) |
vertexT * | qh_find_newvertex (vertexT *oldvertex, setT *vertices, setT *ridges) |
void | qh_findbest_test (boolT testcentrum, facetT *facet, facetT *neighbor, facetT **bestfacet, realT *distp, realT *mindistp, realT *maxdistp) |
facetT * | qh_findbestneighbor (facetT *facet, realT *distp, realT *mindistp, realT *maxdistp) |
void | qh_flippedmerges (facetT *facetlist, boolT *wasmerge) |
void | qh_forcedmerges (boolT *wasmerge) |
void | qh_getmergeset (facetT *facetlist) |
void | qh_getmergeset_initial (facetT *facetlist) |
void | qh_hashridge (setT *hashtable, int hashsize, ridgeT *ridge, vertexT *oldvertex) |
ridgeT * | qh_hashridge_find (setT *hashtable, int hashsize, ridgeT *ridge, vertexT *vertex, vertexT *oldvertex, int *hashslot) |
void | qh_makeridges (facetT *facet) |
void | qh_mark_dupridges (facetT *facetlist) |
void | qh_maydropneighbor (facetT *facet) |
int | qh_merge_degenredundant (void) |
void | qh_merge_nonconvex (facetT *facet1, facetT *facet2, mergeType mergetype) |
void | qh_mergecycle (facetT *samecycle, facetT *newfacet) |
void | qh_mergecycle_all (facetT *facetlist, boolT *wasmerge) |
void | qh_mergecycle_facets (facetT *samecycle, facetT *newfacet) |
void | qh_mergecycle_neighbors (facetT *samecycle, facetT *newfacet) |
void | qh_mergecycle_ridges (facetT *samecycle, facetT *newfacet) |
void | qh_mergecycle_vneighbors (facetT *samecycle, facetT *newfacet) |
void | qh_mergefacet (facetT *facet1, facetT *facet2, realT *mindist, realT *maxdist, boolT mergeapex) |
void | qh_mergefacet2d (facetT *facet1, facetT *facet2) |
void | qh_mergeneighbors (facetT *facet1, facetT *facet2) |
void | qh_mergeridges (facetT *facet1, facetT *facet2) |
void | qh_mergesimplex (facetT *facet1, facetT *facet2, boolT mergeapex) |
void | qh_mergevertex_del (vertexT *vertex, facetT *facet1, facetT *facet2) |
void | qh_mergevertex_neighbors (facetT *facet1, facetT *facet2) |
void | qh_mergevertices (setT *vertices1, setT **vertices2) |
setT * | qh_neighbor_intersections (vertexT *vertex) |
void | qh_newvertices (setT *vertices) |
void | qh_postmerge (const char *reason, realT maxcentrum, realT maxangle, boolT vneighbors) |
void | qh_premerge (vertexT *apex, realT maxcentrum, realT maxangle) |
boolT | qh_reducevertices (void) |
vertexT * | qh_redundant_vertex (vertexT *vertex) |
boolT | qh_remove_extravertices (facetT *facet) |
vertexT * | qh_rename_sharedvertex (vertexT *vertex, facetT *facet) |
void | qh_renameridgevertex (ridgeT *ridge, vertexT *oldvertex, vertexT *newvertex) |
void | qh_renamevertex (vertexT *oldvertex, vertexT *newvertex, setT *ridges, facetT *oldfacet, facetT *neighborA) |
boolT | qh_test_appendmerge (facetT *facet, facetT *neighbor) |
boolT | qh_test_vneighbors (void) |
void | qh_tracemerge (facetT *facet1, facetT *facet2) |
void | qh_tracemerging (void) |
void | qh_updatetested (facetT *facet1, facetT *facet2) |
setT * | qh_vertexridges (vertexT *vertex) |
void | qh_vertexridges_facet (vertexT *vertex, facetT *facet, setT **ridges) |
void | qh_willdelete (facetT *facet, facetT *replace) |