0031456: Visualization - move out Dimensions and Relations from package AIS to PrsDims
[occt.git] / src / PrsDim / PrsDim_TangentRelation.hxx
similarity index 68%
rename from src/AIS/AIS_TangentRelation.hxx
rename to src/PrsDim/PrsDim_TangentRelation.hxx
index a9da68d..501366f 100644 (file)
 // Alternatively, this file may be used under the terms of Open CASCADE
 // commercial license or contractual agreement.
 
-#ifndef _AIS_TangentRelation_HeaderFile
-#define _AIS_TangentRelation_HeaderFile
+#ifndef _PrsDim_TangentRelation_HeaderFile
+#define _PrsDim_TangentRelation_HeaderFile
 
-#include <AIS_Relation.hxx>
+#include <PrsDim_Relation.hxx>
 
-DEFINE_STANDARD_HANDLE(AIS_TangentRelation, AIS_Relation)
+DEFINE_STANDARD_HANDLE(PrsDim_TangentRelation, PrsDim_Relation)
 
 //! A framework to display tangency constraints between
 //! two or more Interactive Objects of the datum type.
 //! The datums are normally faces or edges.
-class AIS_TangentRelation : public AIS_Relation
+class PrsDim_TangentRelation : public PrsDim_Relation
 {
-  DEFINE_STANDARD_RTTIEXT(AIS_TangentRelation, AIS_Relation)
+  DEFINE_STANDARD_RTTIEXT(PrsDim_TangentRelation, PrsDim_Relation)
 public:
 
   //! TwoFacesTangent or TwoEdgesTangent relation
@@ -35,7 +35,7 @@ public:
   //! second shape aSShape, the plane aPlane and the index anExternRef.
   //! aPlane serves as an optional axis.
   //! anExternRef set to 0 indicates that there is no relation.
-  Standard_EXPORT AIS_TangentRelation(const TopoDS_Shape& aFShape, const TopoDS_Shape& aSShape, const Handle(Geom_Plane)& aPlane, const Standard_Integer anExternRef = 0);
+  Standard_EXPORT PrsDim_TangentRelation(const TopoDS_Shape& aFShape, const TopoDS_Shape& aSShape, const Handle(Geom_Plane)& aPlane, const Standard_Integer anExternRef = 0);
   
   //! Returns the external reference for tangency.
   //! The values are as follows:
@@ -43,26 +43,28 @@ public:
   //! -   1 - there is a connection to the first shape;
   //! -   2 - there is a connection to the second shape.
   //! This reference is defined at construction time.
-  Standard_EXPORT Standard_Integer ExternRef();
-  
+  Standard_Integer ExternRef() { return myExternRef; }
+
   //! Sets the external reference for tangency, aRef.
   //! The values are as follows:
   //! -   0 - there is no connection;
   //! -   1 - there is a connection to the first shape;
   //! -   2 - there is a connection to the second shape.
   //! This reference is initially defined at construction time.
-  Standard_EXPORT void SetExternRef (const Standard_Integer aRef);
+  void SetExternRef (const Standard_Integer aRef) { myExternRef = aRef; }
 
 private:
 
-  Standard_EXPORT void Compute (const Handle(PrsMgr_PresentationManager3d)& aPresentationManager, const Handle(Prs3d_Presentation)& aPresentation, const Standard_Integer aMode = 0) Standard_OVERRIDE;
+  Standard_EXPORT virtual void Compute (const Handle(PrsMgr_PresentationManager3d)& aPresentationManager, const Handle(Prs3d_Presentation)& aPresentation, const Standard_Integer aMode = 0) Standard_OVERRIDE;
   
-  Standard_EXPORT void ComputeSelection (const Handle(SelectMgr_Selection)& aSelection, const Standard_Integer aMode) Standard_OVERRIDE;
+  Standard_EXPORT virtual void ComputeSelection (const Handle(SelectMgr_Selection)& aSelection, const Standard_Integer aMode) Standard_OVERRIDE;
   
   Standard_EXPORT void ComputeTwoFacesTangent (const Handle(Prs3d_Presentation)& aPresentation);
   
   Standard_EXPORT void ComputeTwoEdgesTangent (const Handle(Prs3d_Presentation)& aPresentation);
 
+private:
+
   gp_Pnt myAttach;
   gp_Dir myDir;
   Standard_Real myLength;
@@ -70,4 +72,4 @@ private:
 
 };
 
-#endif // _AIS_TangentRelation_HeaderFile
+#endif // _PrsDim_TangentRelation_HeaderFile