From 1c19717939f4b641d80505cb54325745337a0893 Mon Sep 17 00:00:00 2001 From: adv Date: Wed, 15 Jan 2014 10:12:15 +0000 Subject: [PATCH] Some useful methods. --- src/HYDROData/HYDROData_ShapesTool.cxx | 22 ++++++++++++++++++++++ src/HYDROData/HYDROData_ShapesTool.h | 15 +++++++++++++++ 2 files changed, 37 insertions(+) diff --git a/src/HYDROData/HYDROData_ShapesTool.cxx b/src/HYDROData/HYDROData_ShapesTool.cxx index 0d742e9f..d591c3a6 100644 --- a/src/HYDROData/HYDROData_ShapesTool.cxx +++ b/src/HYDROData/HYDROData_ShapesTool.cxx @@ -133,3 +133,25 @@ void HYDROData_ShapesTool::AddShapes( TopTools_ListOfShape& theShapes, theShapes.Append( aShape ); } } + +void HYDROData_ShapesTool::DumpShapeSubShapes( std::ostream& theStream, + const char* theTitle, + const TopoDS_Shape& theShape, + const TopAbs_ShapeEnum& theExpType ) +{ + TopTools_SequenceOfShape aShapeSubShapes; + ExploreShapeToShapes( theShape, theExpType, aShapeSubShapes ); + + theStream << theTitle << "\n"; + DumpSequenceOfShapes( theStream, aShapeSubShapes ); +} + +void HYDROData_ShapesTool::DumpSequenceOfShapes( std::ostream& theStream, + const TopTools_SequenceOfShape& theShapes ) +{ + for ( int i = 1, n = theShapes.Length(); i <= n; ++i ) + { + const TopoDS_Shape& aShape = theShapes.Value( i ); + theStream << "Shape " << i << " : " << aShape.TShape() << "\n"; + } +} \ No newline at end of file diff --git a/src/HYDROData/HYDROData_ShapesTool.h b/src/HYDROData/HYDROData_ShapesTool.h index c689a8ea..886b5808 100644 --- a/src/HYDROData/HYDROData_ShapesTool.h +++ b/src/HYDROData/HYDROData_ShapesTool.h @@ -91,6 +91,21 @@ public: */ static void AddShapes( TopTools_ListOfShape& theShapes, const TopTools_ListOfShape& theShapesToAdd ); + + + /** + * \brief Explode and dump the shape to the stream. + */ + static void DumpShapeSubShapes( std::ostream& theStream, + const char* theTitle, + const TopoDS_Shape& theShape, + const TopAbs_ShapeEnum& theExpType ); + + /** + * \brief Dump the shapes sequence to the stream. + */ + static void DumpSequenceOfShapes( std::ostream& theStream, + const TopTools_SequenceOfShape& theShapes ); }; -- 2.39.2