class TopoDS_Vertex;
class TopoDS_Edge;
class TopTools_SequenceOfShape;
+class TopTools_ListOfShape;
class HYDRODATA_EXPORT HYDROData_ShapesTool {
static bool IsEdgesEquals( const TopoDS_Edge& theFirstEdge,
const TopoDS_Edge& theSecondEdge,
const bool theIs2D = false );
+
+ /**
+ * \brief Adds the sequence of shapes to other sequence.
+ * \param theShapes sequence to which the shapes will be added
+ * \param theShapesToAdd sequence from which the shapes will be extracted
+ */
+ static void AddShapes( TopTools_SequenceOfShape& theShapes,
+ const TopTools_SequenceOfShape& theShapesToAdd );
+
+ /**
+ * \brief Adds the list of shapes to the sequence.
+ * \param theShapes sequence to which the shapes will be added
+ * \param theShapesToAdd list from which the shapes will be extracted
+ */
+ static void AddShapes( TopTools_SequenceOfShape& theShapes,
+ const TopTools_ListOfShape& theShapesToAdd );
+
+ /**
+ * \brief Adds the sequence of shapes to the list.
+ * \param theShapes list to which the shapes will be added
+ * \param theShapesToAdd sequence from which the shapes will be extracted
+ */
+ static void AddShapes( TopTools_ListOfShape& theShapes,
+ const TopTools_SequenceOfShape& theShapesToAdd );
+
+ /**
+ * \brief Adds the list of shapes to other list.
+ * \param theShapes list to which the shapes will be added
+ * \param theShapesToAdd list from which the shapes will be extracted
+ */
+ 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 );
};