27 #ifdef _MSC_VER  // Microsoft Visual C++ -- warning level 4 
   28 #pragma warning( disable : 4611)  // interaction between '_setjmp' and C++ object destruction is non-portable 
   29 #pragma warning( disable : 4996)  // function was declared deprecated(strcpy, localtime, etc.) 
   36 s_empty_facet= {0,0,0,0,{0},
 
   49 : qh_facet(&s_empty_facet)
 
   56 : qh_facet(f ? f : &s_empty_facet)
 
  138             throw QhullError(10018, 
"Qhull error: facetArea() or qh_getarea() previously called.  triCoplanarOwner() is not available.");
 
  149           throw QhullError(10052, 
"Error: QhullFacet.voronoiVertex() requires option 'v' (qh_ASvoronoi)");
 
  224         os << 
" NULLfacet" << endl;
 
  228         os << 
" MERGEridge" << endl;
 
  232         os << 
" DUPLICATEridge" << endl;
 
  248     facetT *f= pr.facet->getFacetT();
 
  257         numCoords= pr.facet->qh()->hull_dim-1;
 
  262             for(
int k=0; k<numCoords; k++){
 
  263                 os << f->
center[k] << 
" "; 
 
  266             for(
int k=0; k<numCoords; k++){
 
  271         numCoords= pr.facet->qh()->hull_dim;
 
  278         for(
int k=0; k<numCoords; k++){
 
  279             os << f->
center[k] << 
" "; 
 
  293     const facetT *f= p.facet->getFacetT();
 
  298     os << (p.facet->isTopOrient() ? 
" top" : 
" bottom");
 
  299     if(p.facet->isSimplicial()){
 
  302     if(p.facet->isTriCoplanar()){
 
  303         os << 
" tricoplanar";
 
  305     if(p.facet->isUpperDelaunay()){
 
  306         os << 
" upperDelaunay";
 
  327         os << 
" mergehorizon";
 
  330         os << 
" keepcentrum";
 
  336         os << 
" mergeridge1";
 
  339         os << 
" mergeridge2";
 
  348         os << 
" notfurthest";
 
  366     os << 
"- f" << facet.
id() << endl;
 
  369         os << 
"    - area: " << f->
f.
area << endl; 
 
  371         os << 
"    - replacement: f" << f->
f.
replace->
id << endl;
 
  374             os << 
"    - shares same visible/horizon as f" << f->
f.
samecycle->
id << endl;
 
  378             os << 
"    - owner of normal & centrum is facet f" << f->
f.
triowner->
id << endl;
 
  381         os << 
"    - was horizon to f" << f->
f.
newcycle->
id << endl;
 
  384         os << 
"    - merges: " << f->
nummerge << endl;
 
  391     if(f->
maxoutside > pr.facet->qh()->DISTround){
 
  392         os << 
"    - maxoutside: " << f->
maxoutside << endl; 
 
  399             os << 
"    - outside set(furthest p" << furthest.
id() << 
"):" << endl;
 
  400             for(QhullPointSet::iterator i=ps.
begin(); i!=ps.
end(); ++i){
 
  404         }
else if(ps.
size()<21){
 
  405             os << ps.
print(
"    - outside set:");
 
  407             os << 
"    - outside set:  " << ps.
size() << 
" points.";
 
  408             os << furthest.
print(
"  Furthest");
 
  410 #if !qh_COMPUTEfurthest 
  411         os << 
"    - furthest distance= " << f->
furthestdist << endl; 
 
  418             os << 
"    - coplanar set(furthest p" << furthest.
id() << 
"):" << endl;
 
  419             for(QhullPointSet::iterator i=cs.
begin(); i!=cs.
end(); ++i){
 
  423         }
else if(cs.
size()<21){
 
  424             os << cs.
print(
"    - coplanar set:");
 
  426             os << 
"    - coplanar set:  " << cs.
size() << 
" points.";
 
  427             os << furthest.
print(
"  Furthest");
 
  431         os << 
"      furthest distance= " << 
d << endl; 
 
  435         os << vs.
print(
"    - vertices:");
 
  454         if(f->
visible && pr.facet->qh()->NEWfacets){
 
  455             os << 
"    - ridges(ids may be garbage):";
 
  456             for(QhullRidgeSet::iterator i=rs.begin(); i!=rs.end(); ++i){
 
  458                 os << 
" r" << 
r.id();
 
  462             os << 
"    - ridges:" << endl;
 
  466         for(QhullRidgeSet::iterator i=rs.begin(); i!=rs.end(); ++i){
 
  468             r.getRidgeT()->seen= 
false;
 
  472             for(
QhullRidge r= rs.first(); !
r.getRidgeT()->seen; 
r= 
r.nextRidge3d(facet)){
 
  473                 r.getRidgeT()->seen= 
true;
 
  476                 if(!
r.hasNextRidge3d(facet)){
 
  482             for(QhullFacetSet::iterator i=ns.
begin(); i!=ns.
end(); ++i){
 
  485                 for(QhullRidgeSet::iterator j=nrs.begin(); j!=nrs.end(); ++j){
 
  487                     if(
r.otherFacet(neighbor)==facet){
 
  488                         r.getRidgeT()->seen= 
true;
 
  495         if(ridgeCount!=rs.count()){
 
  496             os << 
"     - all ridges:";
 
  497             for(QhullRidgeSet::iterator i=rs.begin(); i!=rs.end(); ++i){
 
  499                 os << 
" r" << 
r.id();
 
  503         for(QhullRidgeSet::iterator i=rs.begin(); i!=rs.end(); ++i){
 
  505             if(!
r.getRidgeT()->seen){