From 0d399adf46285890a5f6486234e7c1c4e293d729 Mon Sep 17 00:00:00 2001 From: Robert Osfield Date: Wed, 13 Dec 2006 17:39:30 +0000 Subject: [PATCH] Commented out debug messages --- src/osgSim/ElevationSlice.cpp | 309 ++++++++++++++++++++++------------ 1 file changed, 199 insertions(+), 110 deletions(-) diff --git a/src/osgSim/ElevationSlice.cpp b/src/osgSim/ElevationSlice.cpp index 3051ed90b..a2600b4a6 100644 --- a/src/osgSim/ElevationSlice.cpp +++ b/src/osgSim/ElevationSlice.cpp @@ -224,8 +224,8 @@ struct Segment _p2 = p1; } - osg::notify(osg::INFO).precision(12); - osg::notify(osg::INFO)<<"Segment::Segment p1 = "<<(_p1->distance)<<" "<<(_p1->height)<<" p2 = "<<(_p2->distance)<<" "<<(_p2->height)<height)<<" p2 = "<<(_p2->distance)<<" "<<(_p2->height)<height<<" p2 = "<<_p2->distance<<" "<<_p2->height<height<<" p2 = "<distance<<" "<height<height<<" p2 = "<<_p2->distance<<" "<<_p2->height<height<<" p2 = "<distance<<" "<height<position + (_p2->position - _p1->position)*r); } @@ -367,7 +367,6 @@ struct LineConstructor osg::ref_ptr newPoint = new Point(d,h,pos); - if (_previousPoint.valid() && newPoint->distance != _previousPoint->distance) { const double maxGradient = 100.0; @@ -496,7 +495,7 @@ struct LineConstructor if (distance_between < epsilon) { - // osg::notify(osg::INFO)<<"OVERLAPPING : distance_between acceptable "<distance<<" "<height<distance<<" "<height<distance<<" "<height<distance<<" "<height<distance<<" "<height<distance<<" "<height<distance<<" "<height<distance<<" "<height<distance<<" "<height<distance<<" "<height<distance<<" "<height<distance<<" "<height<distance<<" "<height<distance<<" "<height<distance<<" "<height<distance<<" "<height<distance), rhs._p2.get()); @@ -556,16 +554,16 @@ struct LineConstructor nextItr = itr; ++nextItr; - osg::notify(osg::INFO)<<" newSeg_p1 "<distance<<" "<height<distance<<" "<height<distance<<" "<height<distance<<" "<height<= 0.0 && dh2 >= 0.0) { - osg::notify(osg::INFO)<<"++ OVERLAPPING : rhs above lhs "<distance<<" "<height<distance<<" "<height<distance<<" "<height<distance<<" "<height<distance<<" "<height<distance<<" "<height<distance<<" "<height<distance<<" "<height<distance)); @@ -576,8 +574,8 @@ struct LineConstructor nextItr = itr; ++nextItr; - osg::notify(osg::INFO)<<" newSeg_p1 "<distance<<" "<height<distance<<" "<height<distance<<" "<height<distance<<" "<height<distance<<" "<height<distance<<" "<height<distance<<" "<height<distance<<" "<height<distance<<" "<height<distance<<" "<height<distance<<" "<height<distance<<" "<height<distance), enclosing._p2.get()); nextItr = itr; @@ -660,19 +658,19 @@ struct LineConstructor itr = nextItr; ++nextItr; - osg::notify(osg::INFO)<<" newSeg_p1 "<distance<<" "<height<distance<<" "<height<distance<<" "<height<distance<<" "<height<distance<<" "<height<distance<<" "<height<distance<<" "<height<distance<<" "<height<distance<<" "<height<distance<<" "<height<distance<<" "<height<distance<<" "<height<distance) ); @@ -683,19 +681,19 @@ struct LineConstructor nextItr = itr; ++nextItr; - osg::notify(osg::INFO)<<" newSeg_p1 "<distance<<" "<height<distance<<" "<height<distance<<" "<height<distance<<" "<height<distance<<" "<height<distance<<" "<height<distance<<" "<height<distance<<" "<height<distance<<" "<height<distance<<" "<height<distance<<" "<height<distance<<" "<height<distance) ); @@ -709,22 +707,22 @@ struct LineConstructor nextItr = itr; ++nextItr; - osg::notify(osg::INFO)<<" newSegLeft_p1 "<distance<<" "<height<distance<<" "<height<distance<<" "<height<distance<<" "<height<distance<<" "<height<distance<<" "<height<distance<<" "<height<distance<<" "<height<distance<<" "<height<distance<<" "<height<distance<<" "<height<distance<<" "<height<distance<<" "<height<distance<<" "<height<distance<<" "<height<distance<<" "<height<distance - enclosing._p1->distance; double d_right = enclosing._p2->distance - enclosed._p2->distance; @@ -734,7 +732,7 @@ struct LineConstructor // treat ENCLOSED as ENCLOSING. if (dh1 < 0.0) { - osg::notify(osg::INFO)<<" >> enclosing left side is above enclosed left side"<> enclosing left side is above enclosed left side"<> enclosing left side is above enclosed left side"<> enclosing left side is above enclosed left side"<> Replace enclosing with right section"<> Replace enclosing with right section"<> enclosing left side is above enclosed left side"<> enclosing left side is above enclosed left side"<> enclosing left side is above enclosed left side"<> enclosing left side is above enclosed left side"<> Replace enclosing with left section"<> Replace enclosing with left section"<> enclosing left side is above enclosed left side"<> enclosing left side is above enclosed left side"<> enclosing left side is above enclosed left side"<> enclosing left side is above enclosed left side"<distance)); @@ -858,12 +856,12 @@ struct LineConstructor } else { - osg::notify(osg::INFO)<<" >> Replace enclosing with left and right sections"<> Replace enclosing with left and right sections"<> enclosing left side is above enclosed left side"<> enclosing left side is above enclosed left side"<> enclosing left side is above enclosed left side"<> enclosing left side is above enclosed left side"<distance)); @@ -906,7 +904,7 @@ struct LineConstructor } else { - osg::notify(osg::NOTICE)<<"ENCLOSING: ENCLOSING - not sure "<distance<<" "<height<distance<<" "<height<distance - enclosing._p1->distance; + double d_right = enclosing._p2->distance - enclosed._p2->distance; + + if (d_left<=epsilon) { - // osg::notify(osg::NOTICE)<<"+++ ENCLOSED: ENCLOSING is above enclosed "<=0.0 && dh2>=0.0) - { - osg::notify(osg::NOTICE)<<"ENCLOSED: ENCLOSING is below enclosed "<distance<<" "<height<distance<<" "<height<distance<<" "<height<distance<<" "<height<distance<<" "<height<distance<<" "<height<distance<<" "<height<distance<<" "<height<=0.0 && dh2>=0.0) + { +// osg::notify(osg::NOTICE)<<"ENCLOSED: ENCLOSING is below enclosed "<distance<<" "<height<distance<<" "<height<distance<<" "<height<distance<<" "<height<distance), enclosed._p2.get())); + _segments.erase(nextItr); + + nextItr = itr; + ++nextItr; + } + else if (dh1 * dh2 < 0.0) + { +// osg::notify(osg::NOTICE)<<"ENCLOSED: ENCLOSING is crossing enclosed "<distance<<" "<height<distance<<" "<height<distance<<" "<height<distance<<" "<height<distance), enclosing._p2.get()); + + _segments.erase(itr); + _segments.erase(nextItr); + + _segments.insert(segLeft); + _segments.insert(segMid); + _segments.insert(segRight); + + itr = _segments.find(segLeft); + nextItr = itr; + ++nextItr; + } + } + } + else + { + osg::notify(osg::NOTICE)<<"ENCLOSED: ENCLOSING - error case "<distance<<" "<height<distance<<" "<height<distance<<" "<height<distance<<" "<height<distance<<" "<height<distance<<" "<height<distance<<" "<height<distance<<" "<height<