X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;ds=sidebyside;f=src%2FSketcherPrs%2FSketcherPrs_SensitivePoint.h;h=132140beef42639df3c68c4bc5b08342161c814e;hb=4f565b2204d3fba046aa8c851abada2a5a17bf6c;hp=9daf62d47121ade5f950a8c052b8a3c0b337c36f;hpb=8014834da0821ddfaa8b19e3d9bd651fa4392ad9;p=modules%2Fshaper.git diff --git a/src/SketcherPrs/SketcherPrs_SensitivePoint.h b/src/SketcherPrs/SketcherPrs_SensitivePoint.h index 9daf62d47..132140bee 100644 --- a/src/SketcherPrs/SketcherPrs_SensitivePoint.h +++ b/src/SketcherPrs/SketcherPrs_SensitivePoint.h @@ -8,8 +8,6 @@ #define SketcherPrs_SensitivePoint_H #include -#include -#include #include @@ -22,44 +20,43 @@ DEFINE_STANDARD_HANDLE(SketcherPrs_SensitivePoint, Select3D_SensitiveEntity) */ class SketcherPrs_SensitivePoint : public Select3D_SensitiveEntity { -public: +public: //! Constructs a sensitive point object defined by the - //! owner OwnerId and the point Point. - Standard_EXPORT SketcherPrs_SensitivePoint(const Handle(SelectBasics_EntityOwner)& OwnerId, - const Handle(Graphic3d_ArrayOfPoints)& thePntArray, int theId); - - //! Converts the stored 3D point into a 2D point according - //! to ; this method is called by the selection Manager. - Standard_EXPORT void Project (const Handle(Select3D_Projector)& aProjector) ; - - //! stores in the 2D sensitive box which represents - //! the point area in the selection process. - Standard_EXPORT void Areas (SelectBasics_ListOfBox2d& aresult) ; - - Standard_EXPORT Handle(Select3D_SensitiveEntity) GetConnected (const TopLoc_Location& aLocation) ; - - //! Checks whether the sensitive entity matches the picking - //! detection area (close to the picking line). - //! For details please refer to base class declaration. - Standard_EXPORT Standard_Boolean Matches (const SelectBasics_PickArgs& thePickArgs, Standard_Real& theMatchDMin, Standard_Real& theMatchDepth) ; - - Standard_EXPORT Standard_Boolean Matches (const Standard_Real XMin, const Standard_Real YMin, const Standard_Real XMax, const Standard_Real YMax, const Standard_Real aTol) ; - - Standard_EXPORT virtual Standard_Boolean Matches (const TColgp_Array1OfPnt2d& Polyline, const Bnd_Box2d& aBox, const Standard_Real aTol) ; - - Standard_EXPORT Standard_Real ComputeDepth (const gp_Lin& EyeLine) const; - + //! \param OwnerId an Id of the Owner. + //! \param theId and Id of its point + Standard_EXPORT SketcherPrs_SensitivePoint(const Handle(SelectBasics_EntityOwner)& OwnerId, + int theId); + + /// Returns number of sub-elements + Standard_EXPORT virtual Standard_Integer NbSubElements() Standard_OVERRIDE; + + //! Update location of the point + Standard_EXPORT virtual Handle(Select3D_SensitiveEntity) GetConnected() Standard_OVERRIDE; + + //! Checks whether the point overlaps current selecting volume + //! \param theMgr selection manager + //! \param thePickResult returns pick result + Standard_EXPORT virtual Standard_Boolean Matches(SelectBasics_SelectingVolumeManager& theMgr, + SelectBasics_PickResult& thePickResult) Standard_OVERRIDE; + //! Returns the point used at the time of construction. - Standard_EXPORT gp_Pnt Point() const; + Standard_EXPORT gp_Pnt Point() const; + + //! Returns center of point. If location transformation + //! is set, it will be applied + Standard_EXPORT virtual gp_Pnt CenterOfGeometry() const Standard_OVERRIDE; + + //! Returns bounding box of the point. If location + //! transformation is set, it will be applied + Standard_EXPORT virtual Select3D_BndBox3d BoundingBox() Standard_OVERRIDE; - Standard_EXPORT virtual void Dump (Standard_OStream& S, const Standard_Boolean FullDump = Standard_True) const; + /// Clear sub-elements + Standard_EXPORT virtual void Clear() Standard_OVERRIDE; - DEFINE_STANDARD_RTTI(SketcherPrs_SensitivePoint) + DEFINE_STANDARD_RTTIEXT(SketcherPrs_SensitivePoint, Select3D_SensitiveEntity) -private: +private: int myId; - Handle(Graphic3d_ArrayOfPoints) myPntArray; - Select3D_Pnt2d myprojpt; };