0031456: Visualization - move out Dimensions and Relations from package AIS to PrsDims
[occt.git] / src / PrsDim / PrsDim_Relation.hxx
similarity index 89%
rename from src/AIS/AIS_Relation.hxx
rename to src/PrsDim/PrsDim_Relation.hxx
index 4246abf..2d99c13 100644 (file)
 // Alternatively, this file may be used under the terms of Open CASCADE
 // commercial license or contractual agreement.
 
-#ifndef _AIS_Relation_HeaderFile
-#define _AIS_Relation_HeaderFile
+#ifndef _PrsDim_Relation_HeaderFile
+#define _PrsDim_Relation_HeaderFile
 
-#include <AIS_KindOfDimension.hxx>
 #include <AIS_KindOfInteractive.hxx>
-#include <AIS_KindOfSurface.hxx>
 #include <AIS_InteractiveObject.hxx>
 #include <Aspect_TypeOfLine.hxx>
 #include <Aspect_TypeOfMarker.hxx>
@@ -27,6 +25,8 @@
 #include <DsgPrs_ArrowSide.hxx>
 #include <gp_Pln.hxx>
 #include <gp_Pnt.hxx>
+#include <PrsDim_KindOfDimension.hxx>
+#include <PrsDim_KindOfSurface.hxx>
 #include <TCollection_ExtendedString.hxx>
 #include <TopoDS_Shape.hxx>
 
@@ -45,9 +45,9 @@ class TopoDS_Vertex;
 //! -   1 - there is a connection to the first shape;
 //! -   2 - there is a connection to the second shape.
 //! The connection takes the form of an edge between the two shapes.
-class AIS_Relation : public AIS_InteractiveObject
+class PrsDim_Relation : public AIS_InteractiveObject
 {
-  DEFINE_STANDARD_RTTIEXT(AIS_Relation, AIS_InteractiveObject)
+  DEFINE_STANDARD_RTTIEXT(PrsDim_Relation, AIS_InteractiveObject)
 public:
 
   //! Allows you to provide settings for the color theColor
@@ -59,23 +59,23 @@ public:
   Standard_EXPORT void UnsetColor() Standard_OVERRIDE;
 
   virtual AIS_KindOfInteractive Type() const Standard_OVERRIDE { return AIS_KOI_Relation; }
-  
+
   //! Indicates that the type of dimension is unknown.
-  Standard_EXPORT virtual AIS_KindOfDimension KindOfDimension() const;
-  
+  virtual PrsDim_KindOfDimension KindOfDimension() const { return PrsDim_KOD_NONE; }
+
   //! Returns true if the interactive object is movable.
-  Standard_EXPORT virtual Standard_Boolean IsMovable() const;
+  virtual Standard_Boolean IsMovable() const { return Standard_False; }
 
   const TopoDS_Shape& FirstShape() const { return myFShape; }
 
-  Standard_EXPORT virtual void SetFirstShape (const TopoDS_Shape& aFShape);
+  virtual void SetFirstShape (const TopoDS_Shape& aFShape) { myFShape = aFShape; }
 
   //! Returns the second shape.
   const TopoDS_Shape& SecondShape() const { return mySShape; }
 
   //! Allows you to identify the second shape aSShape
   //! relative to the first.
-  Standard_EXPORT virtual void SetSecondShape (const TopoDS_Shape& aSShape);
+  virtual void SetSecondShape (const TopoDS_Shape& aSShape) { mySShape = aSShape; }
 
   void SetBndBox (const Standard_Real theXmin, const Standard_Real theYmin, const Standard_Real theZmin,
                   const Standard_Real theXmax, const Standard_Real theYmax, const Standard_Real theZmax)
@@ -168,7 +168,7 @@ public:
   //! aWidth   : Real                 from Standard = 2;
   //! aProjTOL : TypeOfLine           from Aspect   = Aspect_TOL_DASH;
   //! aCallTOL : TypeOfLine           from Aspect   = Aspect_TOL_DOT)
-  Standard_EXPORT virtual Standard_Boolean AcceptDisplayMode (const Standard_Integer aMode) const Standard_OVERRIDE;
+  virtual Standard_Boolean AcceptDisplayMode (const Standard_Integer theMode) const Standard_OVERRIDE { return theMode == 0; }
 
   void SetAutomaticPosition (const Standard_Boolean theStatus) { myAutomaticPosition = theStatus; }
 
@@ -176,7 +176,7 @@ public:
 
 protected:
 
-  Standard_EXPORT AIS_Relation(const PrsMgr_TypeOfPresentation3d aTypeOfPresentation3d = PrsMgr_TOP_AllView);
+  Standard_EXPORT PrsDim_Relation (const PrsMgr_TypeOfPresentation3d aTypeOfPresentation3d = PrsMgr_TOP_AllView);
 
   //! Calculates the presentation aPres of the the edge
   //! anEdge and the curve it defines, ProjCurve. The later
@@ -207,8 +207,8 @@ protected:
   gp_Pln mySecondPlane;
   Handle(Geom_Surface) myFirstBasisSurf;
   Handle(Geom_Surface) mySecondBasisSurf;
-  AIS_KindOfSurface myFirstSurfType;
-  AIS_KindOfSurface mySecondSurfType;
+  PrsDim_KindOfSurface myFirstSurfType;
+  PrsDim_KindOfSurface mySecondSurfType;
   Standard_Real myFirstOffset;
   Standard_Real mySecondOffset;
   Bnd_Box myBndBox;
@@ -217,6 +217,6 @@ protected:
 
 };
 
-DEFINE_STANDARD_HANDLE(AIS_Relation, AIS_InteractiveObject)
+DEFINE_STANDARD_HANDLE(PrsDim_Relation, AIS_InteractiveObject)
 
 #endif // _AIS_Relation_HeaderFile