X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FHYDROData%2FHYDROData_ShapesTool.h;h=53d391db7b3c4931107448dea15c17225ee597d7;hb=8d4dba4a45855249f5eb022e9cc7dcff202bce3c;hp=c689a8ea27764ab9ddae412fbbd2f794df76a566;hpb=bc7eea244978c24d9860a2149704dda40b810118;p=modules%2Fhydro.git diff --git a/src/HYDROData/HYDROData_ShapesTool.h b/src/HYDROData/HYDROData_ShapesTool.h index c689a8ea..53d391db 100644 --- a/src/HYDROData/HYDROData_ShapesTool.h +++ b/src/HYDROData/HYDROData_ShapesTool.h @@ -1,3 +1,20 @@ +// Copyright (C) 2014-2015 EDF-R&D +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License, or (at your option) any later version. +// +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with this library; if not, write to the Free Software +// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +// +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// #ifndef HYDROData_ShapesTool_HeaderFile #define HYDROData_ShapesTool_HeaderFile @@ -5,12 +22,12 @@ #include "HYDROData.h" #include +#include +#include class TopoDS_Shape; class TopoDS_Vertex; class TopoDS_Edge; -class TopTools_SequenceOfShape; -class TopTools_ListOfShape; class HYDRODATA_EXPORT HYDROData_ShapesTool { @@ -60,6 +77,19 @@ public: const TopoDS_Edge& theSecondEdge, const bool theIs2D = false ); + /** + * \brief Translate the shape to the given distance. + * \param theShape shape to translate + * \param theDx X vector component + * \param theDy Y vector component + * \param theDz Z vector component + * \return result translated shape + */ + static TopoDS_Shape Translated( const TopoDS_Shape& theShape, + const double theDx, + const double theDy, + const double theDz ); + /** * \brief Adds the sequence of shapes to other sequence. * \param theShapes sequence to which the shapes will be added @@ -91,6 +121,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 ); };