X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FPartSet%2FPartSet_Tools.h;h=30838ae09f66fc9869e36d6e48c87a3d5a7421e0;hb=d22fc665c79c31c9eea0625e04c2e941adfdf7be;hp=a436f7b0bf372a79a904eabddfa839c11d8bc6cd;hpb=d058dc531b24c5c548fabfc0dbede4506b4e3076;p=modules%2Fshaper.git diff --git a/src/PartSet/PartSet_Tools.h b/src/PartSet/PartSet_Tools.h index a436f7b0b..30838ae09 100644 --- a/src/PartSet/PartSet_Tools.h +++ b/src/PartSet/PartSet_Tools.h @@ -151,6 +151,27 @@ class PARTSET_EXPORT PartSet_Tools /// \param theEdge - the edge /// \return result object with external edge if it is found static ResultPtr findExternalEdge(CompositeFeaturePtr theSketch, boost::shared_ptr theEdge); + + /// Returns whether the selected presentation has a shape with the vertex type + /// \param thePrs a selected presentation + /// \param theSketch the sketch feature + /// \param theView a 3D view + /// \param theX the output horizontal coordinate of the point + /// \param theY the output vertical coordinate of the point + static bool hasVertexShape(const ModuleBase_ViewerPrs& thePrs, FeaturePtr theSketch, + Handle_V3d_View theView, double& theX, double& theY); +protected: + /// Returns an object that is under the mouse point. Firstly it checks the highlighting, + /// if it exists, the first object is returned. Secondly, there is an iteration on + /// the selected list to find the point. Thirdly, if the object is not found under the + /// the point, the first selected object is returned. + /// \param thePoint a screen point + /// \param theView a 3D view + /// \param theSketch the sketch feature + /// \param thePresentations the list of presentations + static ObjectPtr nearestFeature(QPoint thePoint, Handle_V3d_View theView, FeaturePtr theSketch, + const QList& thePresentations); + }; #endif