Show
Ignore:
Timestamp:
05/28/10 17:51:00 (4 years ago)
Author:
robert
Message:

Conversion of osg::notify to OSG_INFO etc.

Files:
1 modified

Legend:

Unmodified
Added
Removed
  • OpenSceneGraph/trunk/src/osgUtil/Simplifier.cpp

    r10764 r11473  
    9494        if (p1==0 || p2==0) 
    9595        { 
    96             osg::notify(osg::NOTICE)<<"Error computeInterpolatedPoint("<<edge<<",r) p1 and/or p2==0"<<std::endl; 
     96            OSG_NOTICE<<"Error computeInterpolatedPoint("<<edge<<",r) p1 and/or p2==0"<<std::endl; 
    9797            return 0; 
    9898        }  
     
    155155        if (!edge->_p1 || !edge->_p2) 
    156156        { 
    157             osg::notify(osg::NOTICE)<<"Error updateErrorMetricForEdge("<<edge<<") p1 and/or p2==0"<<std::endl; 
     157            OSG_NOTICE<<"Error updateErrorMetricForEdge("<<edge<<") p1 and/or p2==0"<<std::endl; 
    158158            return; 
    159159        } 
     
    227227            if (edge->getErrorMetric()==FLT_MAX) 
    228228            { 
    229                 osg::notify(osg::INFO)<<"collapseMinimumErrorEdge() return false due to edge->getErrorMetric()==FLT_MAX"<<std::endl; 
     229                OSG_INFO<<"collapseMinimumErrorEdge() return false due to edge->getErrorMetric()==FLT_MAX"<<std::endl; 
    230230                return false; 
    231231            } 
     
    234234            return (collapseEdge(edge,pNew.get())); 
    235235        } 
    236         osg::notify(osg::INFO)<<"collapseMinimumErrorEdge() return false due to _edgeSet.empty()"<<std::endl; 
     236        OSG_INFO<<"collapseMinimumErrorEdge() return false due to _edgeSet.empty()"<<std::endl; 
    237237        return false; 
    238238    } 
     
    247247            if (edge->getErrorMetric()==FLT_MAX) 
    248248            { 
    249                 osg::notify(osg::INFO)<<"divideLongestEdge() return false due to edge->getErrorMetric()==FLT_MAX"<<std::endl; 
     249                OSG_INFO<<"divideLongestEdge() return false due to edge->getErrorMetric()==FLT_MAX"<<std::endl; 
    250250                return false; 
    251251            } 
     
    254254            return (divideEdge(edge,pNew.get())); 
    255255        } 
    256         osg::notify(osg::INFO)<<"divideLongestEdge() return false due to _edgeSet.empty()"<<std::endl; 
     256        OSG_INFO<<"divideLongestEdge() return false due to _edgeSet.empty()"<<std::endl; 
    257257        return false; 
    258258    } 
     
    369369        { 
    370370            _triangles.insert(triangle); 
    371             // if (_triangles.size()>2) osg::notify(osg::NOTICE)<<"Warning too many triangles ("<<_triangles.size()<<") sharing edge "<<std::endl; 
     371            // if (_triangles.size()>2) OSG_NOTICE<<"Warning too many triangles ("<<_triangles.size()<<") sharing edge "<<std::endl; 
    372372        } 
    373373         
     
    385385        void updateMaxNormalDeviationOnEdgeCollapse() 
    386386        { 
    387             //osg::notify(osg::NOTICE)<<"updateMaxNormalDeviationOnEdgeCollapse()"<<std::endl; 
     387            //OSG_NOTICE<<"updateMaxNormalDeviationOnEdgeCollapse()"<<std::endl; 
    388388            _maximumDeviation = 0.0f; 
    389389            for(TriangleSet::iterator itr1=_p1->_triangles.begin(); 
     
    520520    Triangle* addTriangle(unsigned int p1, unsigned int p2, unsigned int p3) 
    521521    { 
    522         //osg::notify(osg::NOTICE)<<"addTriangle("<<p1<<","<<p2<<","<<p3<<")"<<std::endl; 
     522        //OSG_NOTICE<<"addTriangle("<<p1<<","<<p2<<","<<p3<<")"<<std::endl; 
    523523 
    524524        // detect if triangle is degenerate. 
     
    554554    Triangle* addTriangle(Point* p1, Point* p2, Point* p3) 
    555555    { 
    556         // osg::notify(osg::NOTICE)<<"      addTriangle("<<p1<<","<<p2<<","<<p3<<")"<<std::endl; 
     556        // OSG_NOTICE<<"      addTriangle("<<p1<<","<<p2<<","<<p3<<")"<<std::endl; 
    557557 
    558558        // detect if triangle is degenerate. 
    559559        if (p1==p2 || p2==p3 || p1==p3)  
    560560        { 
    561             // osg::notify(osg::NOTICE)<<"    **** addTriangle failed - p1==p2 || p2==p3 || p1==p3"<<std::endl; 
     561            // OSG_NOTICE<<"    **** addTriangle failed - p1==p2 || p2==p3 || p1==p3"<<std::endl; 
    562562            return 0; 
    563563        } 
     
    631631        if (!(triangle->_p1)) 
    632632        { 
    633             osg::notify(osg::NOTICE)<<"testTriangle("<<triangle<<") _p1==NULL"<<std::endl; 
     633            OSG_NOTICE<<"testTriangle("<<triangle<<") _p1==NULL"<<std::endl; 
    634634            ++result; 
    635635        } 
    636636        else if (triangle->_p1->_triangles.count(triangle)==0)  
    637637        { 
    638             osg::notify(osg::NOTICE)<<"testTriangle("<<triangle<<") _p1->_triangles does not contain triangle"<<std::endl; 
     638            OSG_NOTICE<<"testTriangle("<<triangle<<") _p1->_triangles does not contain triangle"<<std::endl; 
    639639            ++result; 
    640640        } 
     
    642642        if (!(triangle->_p2)) 
    643643        { 
    644             osg::notify(osg::NOTICE)<<"testTriangle("<<triangle<<") _p2==NULL"<<std::endl; 
     644            OSG_NOTICE<<"testTriangle("<<triangle<<") _p2==NULL"<<std::endl; 
    645645            ++result; 
    646646        } 
    647647        else if (triangle->_p2->_triangles.count(triangle)==0)  
    648648        { 
    649             osg::notify(osg::NOTICE)<<"testTriangle("<<triangle<<") _p2->_triangles does not contain triangle"<<std::endl; 
     649            OSG_NOTICE<<"testTriangle("<<triangle<<") _p2->_triangles does not contain triangle"<<std::endl; 
    650650            ++result; 
    651651        } 
     
    653653        if (!(triangle->_p3)) 
    654654        { 
    655             osg::notify(osg::NOTICE)<<"testTriangle("<<triangle<<") _p3==NULL"<<std::endl; 
     655            OSG_NOTICE<<"testTriangle("<<triangle<<") _p3==NULL"<<std::endl; 
    656656            ++result; 
    657657        } 
    658658        else if (triangle->_p3->_triangles.count(triangle)==0)  
    659659        { 
    660             osg::notify(osg::NOTICE)<<"testTriangle("<<triangle<<") _p3->_triangles does not contain triangle"<<std::endl; 
     660            OSG_NOTICE<<"testTriangle("<<triangle<<") _p3->_triangles does not contain triangle"<<std::endl; 
    661661            ++result; 
    662662        } 
     
    665665        { 
    666666            ++result; 
    667             osg::notify(osg::NOTICE)<<"testTriangle("<<triangle<<") _e1 test failed"<<std::endl; 
     667            OSG_NOTICE<<"testTriangle("<<triangle<<") _e1 test failed"<<std::endl; 
    668668        } 
    669669         
     
    671671        { 
    672672            ++result; 
    673             osg::notify(osg::NOTICE)<<"testTriangle("<<triangle<<") _e2 test failed"<<std::endl; 
     673            OSG_NOTICE<<"testTriangle("<<triangle<<") _e2 test failed"<<std::endl; 
    674674        } 
    675675 
    676676        if (testEdge(triangle->_e3.get())) 
    677677        { 
    678             osg::notify(osg::NOTICE)<<"testTriangle("<<triangle<<") _e3 test failed"<<std::endl; 
     678            OSG_NOTICE<<"testTriangle("<<triangle<<") _e3 test failed"<<std::endl; 
    679679            ++result; 
    680680        } 
     
    697697    Edge* addEdge(Triangle* triangle, Point* p1, Point* p2) 
    698698    { 
    699         // osg::notify(osg::NOTICE)<<"        addEdge("<<p1<<","<<p2<<")"<<std::endl; 
     699        // OSG_NOTICE<<"        addEdge("<<p1<<","<<p2<<")"<<std::endl; 
    700700        osg::ref_ptr<Edge> edge = new Edge; 
    701701        if (dereference_check_less(p1, p2)) 
     
    715715        if (itr==_edgeSet.end()) 
    716716        { 
    717             // osg::notify(osg::NOTICE)<<"          addEdge("<<edge.get()<<") edge->_p1="<<edge->_p1.get()<<" _p2="<<edge->_p2.get()<<std::endl; 
     717            // OSG_NOTICE<<"          addEdge("<<edge.get()<<") edge->_p1="<<edge->_p1.get()<<" _p2="<<edge->_p2.get()<<std::endl; 
    718718            _edgeSet.insert(edge); 
    719719        } 
    720720        else 
    721721        { 
    722             // osg::notify(osg::NOTICE)<<"          reuseEdge("<<edge.get()<<") edge->_p1="<<edge->_p1.get()<<" _p2="<<edge->_p2.get()<<std::endl; 
     722            // OSG_NOTICE<<"          reuseEdge("<<edge.get()<<") edge->_p1="<<edge->_p1.get()<<" _p2="<<edge->_p2.get()<<std::endl; 
    723723            edge = *itr; 
    724724        } 
     
    796796        if (edge->getMaxNormalDeviationOnEdgeCollapse()>1.0) 
    797797        { 
    798             osg::notify(osg::NOTICE)<<"collapseEdge("<<edge<<") refused due to edge->getMaxNormalDeviationOnEdgeCollapse() = "<<edge->getMaxNormalDeviationOnEdgeCollapse()<<std::endl; 
     798            OSG_NOTICE<<"collapseEdge("<<edge<<") refused due to edge->getMaxNormalDeviationOnEdgeCollapse() = "<<edge->getMaxNormalDeviationOnEdgeCollapse()<<std::endl; 
    799799           return false; 
    800800        } 
    801801        else 
    802802        { 
    803             //osg::notify(osg::NOTICE)<<"collapseEdge("<<edge<<") edge->getMaxNormalDeviationOnEdgeCollapse() = "<<edge->getMaxNormalDeviationOnEdgeCollapse()<<std::endl; 
     803            //OSG_NOTICE<<"collapseEdge("<<edge<<") edge->getMaxNormalDeviationOnEdgeCollapse() = "<<edge->getMaxNormalDeviationOnEdgeCollapse()<<std::endl; 
    804804        } 
    805805#endif 
     
    882882        } 
    883883 
    884         //osg::notify(osg::NOTICE)<<"  pNew="<<pNew<<"\tedge_p1"<<edge_p1.get()<<"\tedge_p2"<<edge_p2.get()<<std::endl; 
     884        //OSG_NOTICE<<"  pNew="<<pNew<<"\tedge_p1"<<edge_p1.get()<<"\tedge_p2"<<edge_p2.get()<<std::endl; 
    885885         
    886886        // we copy the edge's _triangles and interate the copy of the triangle set to avoid invalidating iterators. 
     
    968968        edges2UpdateErrorMetric.insert(newEdges.begin(), newEdges.end()); 
    969969 
    970         // osg::notify(osg::NOTICE)<<"Edges to recalibarate "<<edges2UpdateErrorMetric.size()<<std::endl; 
     970        // OSG_NOTICE<<"Edges to recalibarate "<<edges2UpdateErrorMetric.size()<<std::endl; 
    971971 
    972972        for(LocalEdgeList::iterator itr=edges2UpdateErrorMetric.begin(); 
     
    974974            ++itr) 
    975975        { 
    976             //osg::notify(osg::NOTICE)<<"updateErrorMetricForEdge("<<itr->get()<<")"<<std::endl; 
     976            //OSG_NOTICE<<"updateErrorMetricForEdge("<<itr->get()<<")"<<std::endl; 
    977977            updateErrorMetricForEdge(const_cast<Edge*>(itr->get())); 
    978978        } 
     
    984984    bool divideEdge(Edge* edge, Point* pNew) 
    985985    { 
    986          // osg::notify(osg::NOTICE)<<"divideEdge("<<edge<<") before _edgeSet.size()="<<_edgeSet.size()<<" _triangleSet.size()="<<_triangleSet.size()<<std::endl; 
     986         // OSG_NOTICE<<"divideEdge("<<edge<<") before _edgeSet.size()="<<_edgeSet.size()<<" _triangleSet.size()="<<_triangleSet.size()<<std::endl; 
    987987 
    988988        // first collect the triangles associaged with edges that need deleting 
     
    990990        TriangleSet triangles = edge->_triangles; 
    991991 
    992         // osg::notify(osg::NOTICE)<<"   numTriangles on edges "<<triangles.size()<<std::endl; 
     992        // OSG_NOTICE<<"   numTriangles on edges "<<triangles.size()<<std::endl; 
    993993 
    994994        // unsigned int numTriangles1 = _triangleSet.size(); 
     
    10291029            { 
    10301030                case(0): // error, shouldn't get here. 
    1031                     osg::notify(osg::NOTICE)<<"Error EdgeCollapse::divideEdge(Edge*,Point*) passed invalid edge."<<std::endl; 
     1031                    OSG_NOTICE<<"Error EdgeCollapse::divideEdge(Edge*,Point*) passed invalid edge."<<std::endl; 
    10321032                    return false; 
    10331033                case(1): // p1, p2 
    1034                     // osg::notify(osg::NOTICE)<<"   // p1, p2 "<<std::endl; 
    1035                     // osg::notify(osg::NOTICE)<<"   newTri1 = addTriangle(tri->_p1.get(), pNew, tri->_p3.get());"<<std::endl; 
     1034                    // OSG_NOTICE<<"   // p1, p2 "<<std::endl; 
     1035                    // OSG_NOTICE<<"   newTri1 = addTriangle(tri->_p1.get(), pNew, tri->_p3.get());"<<std::endl; 
    10361036                    newTri1 = addTriangle(tri->_p1.get(), pNew, tri->_p3.get()); 
    1037                     // osg::notify(osg::NOTICE)<<"   newTri2 = addTriangle(pNew, tri->_p2.get(), tri->_p3.get());"<<std::endl; 
     1037                    // OSG_NOTICE<<"   newTri2 = addTriangle(pNew, tri->_p2.get(), tri->_p3.get());"<<std::endl; 
    10381038                    newTri2 = addTriangle(pNew, tri->_p2.get(), tri->_p3.get()); 
    10391039                    break; 
    10401040                case(2): // p2, p3 
    1041                     // osg::notify(osg::NOTICE)<<"   // p2, p3"<<std::endl; 
    1042                     // osg::notify(osg::NOTICE)<<"   newTri1 = addTriangle(tri->_p1.get(), tri->_p2.get(), pNew);"<<std::endl; 
     1041                    // OSG_NOTICE<<"   // p2, p3"<<std::endl; 
     1042                    // OSG_NOTICE<<"   newTri1 = addTriangle(tri->_p1.get(), tri->_p2.get(), pNew);"<<std::endl; 
    10431043                    newTri1 = addTriangle(tri->_p1.get(), tri->_p2.get(), pNew); 
    1044                     //osg::notify(osg::NOTICE)<<"   newTri2 = addTriangle(tri->_p1.get(), pNew, tri->_p3.get());"<<std::endl; 
     1044                    //OSG_NOTICE<<"   newTri2 = addTriangle(tri->_p1.get(), pNew, tri->_p3.get());"<<std::endl; 
    10451045                    newTri2 = addTriangle(tri->_p1.get(), pNew, tri->_p3.get()); 
    10461046                    break; 
    10471047                case(3): // p3, p1 
    1048                     // osg::notify(osg::NOTICE)<<"   // p3, p1"<<std::endl; 
    1049                     // osg::notify(osg::NOTICE)<<"   newTri1 = addTriangle(tri->_p1.get(), tri->_p2.get(), pNew);"<<std::endl; 
     1048                    // OSG_NOTICE<<"   // p3, p1"<<std::endl; 
     1049                    // OSG_NOTICE<<"   newTri1 = addTriangle(tri->_p1.get(), tri->_p2.get(), pNew);"<<std::endl; 
    10501050                    newTri1 = addTriangle(tri->_p1.get(), tri->_p2.get(), pNew); 
    1051                     // osg::notify(osg::NOTICE)<<"   newTri2 = addTriangle(pNew, tri->_p2.get(), tri->_p3.get());"<<std::endl; 
     1051                    // OSG_NOTICE<<"   newTri2 = addTriangle(pNew, tri->_p2.get(), tri->_p3.get());"<<std::endl; 
    10521052                    newTri2 = addTriangle(pNew, tri->_p2.get(), tri->_p3.get()); 
    10531053                    break; 
     
    10841084            ++itr) 
    10851085        { 
    1086             //osg::notify(osg::NOTICE)<<"updateErrorMetricForEdge("<<itr->get()<<")"<<std::endl; 
     1086            //OSG_NOTICE<<"updateErrorMetricForEdge("<<itr->get()<<")"<<std::endl; 
    10871087            if (itr->valid()) updateErrorMetricForEdge(const_cast<Edge*>(itr->get())); 
    10881088        } 
     
    10921092        // unsigned int numTriangles3 = _triangleSet.size(); 
    10931093 
    1094         // osg::notify(osg::NOTICE)<<"   numTriangles1="<<numTriangles1<<"   numTriangles2="<<numTriangles2<<"   numTriangles3="<<numTriangles3<<std::endl; 
    1095         // osg::notify(osg::NOTICE)<<"   numEdges1="<<numEdges1<<"   numEdges2="<<numEdges2<<"   numEdges3="<<numEdges3<<std::endl; 
    1096         // osg::notify(osg::NOTICE)<<"   numBoundaryEdges1="<<numBoundaryEdges1<<"   numBoundaryEdges2="<<numBoundaryEdges2<<"   numBoundaryEdges3="<<numBoundaryEdges3<<std::endl; 
    1097         // osg::notify(osg::NOTICE)<<"divideEdge("<<edge<<") after _edgeSet.size()="<<_edgeSet.size()<<" _triangleSet.size()="<<_triangleSet.size()<<std::endl; 
     1094        // OSG_NOTICE<<"   numTriangles1="<<numTriangles1<<"   numTriangles2="<<numTriangles2<<"   numTriangles3="<<numTriangles3<<std::endl; 
     1095        // OSG_NOTICE<<"   numEdges1="<<numEdges1<<"   numEdges2="<<numEdges2<<"   numEdges3="<<numEdges3<<std::endl; 
     1096        // OSG_NOTICE<<"   numBoundaryEdges1="<<numBoundaryEdges1<<"   numBoundaryEdges2="<<numBoundaryEdges2<<"   numBoundaryEdges3="<<numBoundaryEdges3<<std::endl; 
     1097        // OSG_NOTICE<<"divideEdge("<<edge<<") after _edgeSet.size()="<<_edgeSet.size()<<" _triangleSet.size()="<<_triangleSet.size()<<std::endl; 
    10981098 
    10991099        return true; 
     
    11101110            if (!(triangle->_e1 == edge || triangle->_e2 == edge || triangle->_e3 == edge)) 
    11111111            { 
    1112                 osg::notify(osg::NOTICE)<<"testEdge("<<edge<<"). triangle != point back to this edge"<<std::endl; 
    1113                 osg::notify(osg::NOTICE)<<"                     triangle->_e1=="<<triangle->_e1.get()<<std::endl; 
    1114                 osg::notify(osg::NOTICE)<<"                     triangle->_e2=="<<triangle->_e2.get()<<std::endl; 
    1115                 osg::notify(osg::NOTICE)<<"                     triangle->_e3=="<<triangle->_e3.get()<<std::endl; 
     1112                OSG_NOTICE<<"testEdge("<<edge<<"). triangle != point back to this edge"<<std::endl; 
     1113                OSG_NOTICE<<"                     triangle->_e1=="<<triangle->_e1.get()<<std::endl; 
     1114                OSG_NOTICE<<"                     triangle->_e2=="<<triangle->_e2.get()<<std::endl; 
     1115                OSG_NOTICE<<"                     triangle->_e3=="<<triangle->_e3.get()<<std::endl; 
    11161116                ++numErrors; 
    11171117            } 
     
    11201120        if (edge->_triangles.empty()) 
    11211121        { 
    1122             osg::notify(osg::NOTICE)<<"testEdge("<<edge<<")._triangles is empty"<<std::endl; 
     1122            OSG_NOTICE<<"testEdge("<<edge<<")._triangles is empty"<<std::endl; 
    11231123            ++numErrors; 
    11241124        } 
     
    11621162        if (itr==_pointSet.end()) 
    11631163        { 
    1164             //osg::notify(osg::NOTICE)<<"  addPoint("<<point.get()<<")"<<std::endl; 
     1164            //OSG_NOTICE<<"  addPoint("<<point.get()<<")"<<std::endl; 
    11651165            _pointSet.insert(point); 
    11661166        } 
     
    11681168        { 
    11691169            point = const_cast<Point*>(itr->get()); 
    1170             //osg::notify(osg::NOTICE)<<"  reusePoint("<<point.get()<<")"<<std::endl; 
     1170            //OSG_NOTICE<<"  reusePoint("<<point.get()<<")"<<std::endl; 
    11711171        } 
    11721172 
     
    12031203            if (!(triangle->_p1 == point || triangle->_p2 == point || triangle->_p3 == point)) 
    12041204            { 
    1205                 osg::notify(osg::NOTICE)<<"testPoint("<<point<<") error, triangle "<<triangle<<" does not point back to this point"<<std::endl; 
    1206                 osg::notify(osg::NOTICE)<<"             triangle->_p1 "<<triangle->_p1.get()<<std::endl; 
    1207                 osg::notify(osg::NOTICE)<<"             triangle->_p2 "<<triangle->_p2.get()<<std::endl; 
    1208                 osg::notify(osg::NOTICE)<<"             triangle->_p3 "<<triangle->_p3.get()<<std::endl; 
     1205                OSG_NOTICE<<"testPoint("<<point<<") error, triangle "<<triangle<<" does not point back to this point"<<std::endl; 
     1206                OSG_NOTICE<<"             triangle->_p1 "<<triangle->_p1.get()<<std::endl; 
     1207                OSG_NOTICE<<"             triangle->_p2 "<<triangle->_p2.get()<<std::endl; 
     1208                OSG_NOTICE<<"             triangle->_p3 "<<triangle->_p3.get()<<std::endl; 
    12091209                ++numErrors; 
    12101210            } 
     
    14231423    { 
    14241424        // removing coord indices 
    1425         osg::notify(osg::INFO)<<"EdgeCollapse::setGeometry(..): Removing attribute indices"<<std::endl; 
     1425        OSG_INFO<<"EdgeCollapse::setGeometry(..): Removing attribute indices"<<std::endl; 
    14261426        _geometry->copyToAndOptimize(*_geometry); 
    14271427    } 
     
    14311431    { 
    14321432        // removing coord indices 
    1433         osg::notify(osg::INFO)<<"EdgeCollapse::setGeometry(..): Duplicate shared arrays"<<std::endl; 
     1433        OSG_INFO<<"EdgeCollapse::setGeometry(..): Duplicate shared arrays"<<std::endl; 
    14341434        _geometry->duplicateSharedArrays(); 
    14351435    } 
     
    17501750void Simplifier::simplify(osg::Geometry& geometry, const IndexList& protectedPoints) 
    17511751{ 
    1752     osg::notify(osg::INFO)<<"++++++++++++++simplifier************"<<std::endl; 
     1752    OSG_INFO<<"++++++++++++++simplifier************"<<std::endl; 
    17531753 
    17541754    EdgeCollapse ec; 
     
    17651765               ec.collapseMinimumErrorEdge()) 
    17661766        { 
    1767            //osg::notify(osg::INFO)<<"   Collapsed edge ec._triangleSet.size()="<<ec._triangleSet.size()<<" error="<<(*ec._edgeSet.begin())->getErrorMetric()<<" vs "<<getMaximumError()<<std::endl; 
    1768         } 
    1769  
    1770         osg::notify(osg::INFO)<<"******* AFTER EDGE COLLAPSE *********"<<ec._triangleSet.size()<<std::endl; 
     1767           //OSG_INFO<<"   Collapsed edge ec._triangleSet.size()="<<ec._triangleSet.size()<<" error="<<(*ec._edgeSet.begin())->getErrorMetric()<<" vs "<<getMaximumError()<<std::endl; 
     1768        } 
     1769 
     1770        OSG_INFO<<"******* AFTER EDGE COLLAPSE *********"<<ec._triangleSet.size()<<std::endl; 
    17711771    } 
    17721772    else 
     
    17791779               ec.divideLongestEdge()) 
    17801780        { 
    1781            //osg::notify(osg::INFO)<<"   Edge divided ec._triangleSet.size()="<<ec._triangleSet.size()<<" error="<<(*ec._edgeSet.rbegin())->getErrorMetric()<<" vs "<<getMaximumError()<<std::endl; 
    1782         } 
    1783         osg::notify(osg::INFO)<<"******* AFTER EDGE DIVIDE *********"<<ec._triangleSet.size()<<std::endl; 
    1784     } 
    1785  
    1786     osg::notify(osg::INFO)<<"Number of triangle errors after edge collapse= "<<ec.testAllTriangles()<<std::endl; 
    1787     osg::notify(osg::INFO)<<"Number of edge errors before edge collapse= "<<ec.testAllEdges()<<std::endl; 
    1788     osg::notify(osg::INFO)<<"Number of point errors after edge collapse= "<<ec.testAllPoints()<<std::endl; 
    1789     osg::notify(osg::INFO)<<"Number of triangles= "<<ec._triangleSet.size()<<std::endl; 
    1790     osg::notify(osg::INFO)<<"Number of points= "<<ec._pointSet.size()<<std::endl; 
    1791     osg::notify(osg::INFO)<<"Number of edges= "<<ec._edgeSet.size()<<std::endl; 
    1792     osg::notify(osg::INFO)<<"Number of boundary edges= "<<ec.computeNumBoundaryEdges()<<std::endl; 
     1781           //OSG_INFO<<"   Edge divided ec._triangleSet.size()="<<ec._triangleSet.size()<<" error="<<(*ec._edgeSet.rbegin())->getErrorMetric()<<" vs "<<getMaximumError()<<std::endl; 
     1782        } 
     1783        OSG_INFO<<"******* AFTER EDGE DIVIDE *********"<<ec._triangleSet.size()<<std::endl; 
     1784    } 
     1785 
     1786    OSG_INFO<<"Number of triangle errors after edge collapse= "<<ec.testAllTriangles()<<std::endl; 
     1787    OSG_INFO<<"Number of edge errors before edge collapse= "<<ec.testAllEdges()<<std::endl; 
     1788    OSG_INFO<<"Number of point errors after edge collapse= "<<ec.testAllPoints()<<std::endl; 
     1789    OSG_INFO<<"Number of triangles= "<<ec._triangleSet.size()<<std::endl; 
     1790    OSG_INFO<<"Number of points= "<<ec._pointSet.size()<<std::endl; 
     1791    OSG_INFO<<"Number of edges= "<<ec._edgeSet.size()<<std::endl; 
     1792    OSG_INFO<<"Number of boundary edges= "<<ec.computeNumBoundaryEdges()<<std::endl; 
    17931793 
    17941794    if (!ec._edgeSet.empty()) 
    17951795    { 
    1796         osg::notify(osg::INFO)<<std::endl<<"Simplifier, in = "<<numOriginalPrimitives<<"\tout = "<<ec._triangleSet.size()<<"\terror="<<(*ec._edgeSet.begin())->getErrorMetric()<<"\tvs "<<getMaximumError()<<std::endl<<std::endl; 
    1797         osg::notify(osg::INFO)<<           "        !ec._edgeSet.empty()  = "<<!ec._edgeSet.empty()<<std::endl; 
    1798         osg::notify(osg::INFO)<<           "        continueSimplification(,,)  = "<<continueSimplification((*ec._edgeSet.begin())->getErrorMetric() , numOriginalPrimitives, ec._triangleSet.size())<<std::endl; 
     1796        OSG_INFO<<std::endl<<"Simplifier, in = "<<numOriginalPrimitives<<"\tout = "<<ec._triangleSet.size()<<"\terror="<<(*ec._edgeSet.begin())->getErrorMetric()<<"\tvs "<<getMaximumError()<<std::endl<<std::endl; 
     1797        OSG_INFO<<           "        !ec._edgeSet.empty()  = "<<!ec._edgeSet.empty()<<std::endl; 
     1798        OSG_INFO<<           "        continueSimplification(,,)  = "<<continueSimplification((*ec._edgeSet.begin())->getErrorMetric() , numOriginalPrimitives, ec._triangleSet.size())<<std::endl; 
    17991799    } 
    18001800