X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FModelGeomAlgo%2FModelGeomAlgo_Shape.h;h=3f5f49665cf996fdaa9795729eb557b5823f5e28;hb=0a332f5f970393cdf4d83f92aafd629dbe20b607;hp=e2fa4a1753a1e4992cc21cfbebf469752ac7e4e2;hpb=d21a0974f79da3df31bc2ccfd5becafb76e815d8;p=modules%2Fshaper.git diff --git a/src/ModelGeomAlgo/ModelGeomAlgo_Shape.h b/src/ModelGeomAlgo/ModelGeomAlgo_Shape.h index e2fa4a175..3f5f49665 100644 --- a/src/ModelGeomAlgo/ModelGeomAlgo_Shape.h +++ b/src/ModelGeomAlgo/ModelGeomAlgo_Shape.h @@ -1,4 +1,4 @@ -// Copyright (C) 2014-2017 CEA/DEN, EDF R&D +// Copyright (C) 2014-2019 CEA/DEN, 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 @@ -12,10 +12,9 @@ // // 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 +// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA // -// See http://www.salome-platform.org/ or -// email : webmaster.salome@opencascade.com +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // #ifndef ModelGeomAlgo_Shape_H @@ -40,20 +39,26 @@ namespace ModelGeomAlgo_Shape { const GeomAPI_Shape::ShapeType& theType, std::set >& theShapeResults); + struct SubshapeOfResult + { + std::shared_ptr myResult; + std::shared_ptr mySubshape; + int myCenterType; + }; + /// Searches a sub-shape in the results of the given features, /// which contains the given point. /// \param[in] theFeature feature, which results are being processed /// \param[in] thePoint selected point which identifies the shape /// \param[in] theShapeType type of the selected shape - /// \param[out] theResult applicable result - /// \param[out] theSubshape sub-shape of the found result + /// \param[out] theSelected applicable result, sub-shape of the found result and + /// type of the point if it is a center of circle or a focus of ellipse /// \return \c true if the result and its applicable sub-shape are found MODELGEOMALGO_EXPORT bool findSubshapeByPoint( const std::shared_ptr& theFeature, const std::shared_ptr& thePoint, const GeomAPI_Shape::ShapeType& theShapeType, - std::shared_ptr& theResult, - std::shared_ptr& theSubshape); + std::list& theSelected); } #endif