0031456: Visualization - move out Dimensions and Relations from package AIS to PrsDims
[occt.git] / src / PrsDim / PrsDim_AngleDimension.hxx
old mode 100755 (executable)
new mode 100644 (file)
similarity index 85%
rename from src/AIS/AIS_AngleDimension.hxx
rename to src/PrsDim/PrsDim_AngleDimension.hxx
index 7c9c1ce..b46ea7a
 // Alternatively, this file may be used under the terms of Open CASCADE
 // commercial license or contractual agreement.
 
-#ifndef _AIS_AngleDimension_HeaderFile
-#define _AIS_AngleDimension_HeaderFile
+#ifndef _PrsDim_AngleDimension_HeaderFile
+#define _PrsDim_AngleDimension_HeaderFile
 
-#include <AIS_Dimension.hxx>
-#include <AIS_TypeOfAngle.hxx>
-#include <AIS_TypeOfAngleArrowVisibility.hxx>
+#include <PrsDim_Dimension.hxx>
+#include <PrsDim_TypeOfAngle.hxx>
+#include <PrsDim_TypeOfAngleArrowVisibility.hxx>
 
 #include <Geom_Plane.hxx>
 #include <Geom_Line.hxx>
-#include <Geom_Transformation.hxx>
 #include <gp.hxx>
 #include <gp_Ax1.hxx>
 #include <gp_Dir.hxx>
@@ -36,8 +35,7 @@
 #include <TopoDS_Face.hxx>
 #include <TopoDS_Vertex.hxx>
 
-class AIS_AngleDimension;
-DEFINE_STANDARD_HANDLE (AIS_AngleDimension, AIS_Dimension)
+DEFINE_STANDARD_HANDLE(PrsDim_AngleDimension, PrsDim_Dimension)
 
 //! Angle dimension. Can be constructed:
 //! - on two intersected edges.
@@ -61,90 +59,72 @@ DEFINE_STANDARD_HANDLE (AIS_AngleDimension, AIS_Dimension)
 //!
 //! In case of the conical face the center point of the angle is the apex of the conical surface.
 //! The attachment points are points of the first and the last parameter of the basis circle of the cone.
-//!
-class AIS_AngleDimension : public AIS_Dimension
+class PrsDim_AngleDimension : public PrsDim_Dimension
 {
+  DEFINE_STANDARD_RTTIEXT(PrsDim_AngleDimension, PrsDim_Dimension)
 public:
 
   //! Constructs minimum angle dimension between two linear edges (where possible).
   //! These two edges should be intersected by each other. Otherwise the geometry is not valid.
   //! @param theFirstEdge [in] the first edge.
   //! @param theSecondEdge [in] the second edge.
-  Standard_EXPORT AIS_AngleDimension (const TopoDS_Edge& theFirstEdge,
-                                      const TopoDS_Edge& theSecondEdge);
+  Standard_EXPORT PrsDim_AngleDimension (const TopoDS_Edge& theFirstEdge,
+                                         const TopoDS_Edge& theSecondEdge);
 
   //! Constructs the angle display object defined by three points.
   //! @param theFirstPoint [in] the first point (point on first angle flyout).
   //! @param theSecondPoint [in] the center point of angle dimension.
   //! @param theThirdPoint [in] the second point (point on second angle flyout).
-  Standard_EXPORT AIS_AngleDimension (const gp_Pnt& theFirstPoint,
-                                      const gp_Pnt& theSecondPoint,
-                                      const gp_Pnt& theThirdPoint);
+  Standard_EXPORT PrsDim_AngleDimension (const gp_Pnt& theFirstPoint,
+                                         const gp_Pnt& theSecondPoint,
+                                         const gp_Pnt& theThirdPoint);
 
   //! Constructs the angle display object defined by three vertices.
   //! @param theFirstVertex [in] the first vertex (vertex for first angle flyout).
   //! @param theSecondVertex [in] the center vertex of angle dimension.
   //! @param theThirdPoint [in] the second vertex (vertex for second angle flyout).
-  Standard_EXPORT AIS_AngleDimension (const TopoDS_Vertex& theFirstVertex,
-                                      const TopoDS_Vertex& theSecondVertex,
-                                      const TopoDS_Vertex& theThirdVertex);
+  Standard_EXPORT PrsDim_AngleDimension (const TopoDS_Vertex& theFirstVertex,
+                                         const TopoDS_Vertex& theSecondVertex,
+                                         const TopoDS_Vertex& theThirdVertex);
 
   //! Constructs angle dimension for the cone face.
   //! @param theCone [in] the conical face.
-  Standard_EXPORT AIS_AngleDimension (const TopoDS_Face& theCone);
+  Standard_EXPORT PrsDim_AngleDimension (const TopoDS_Face& theCone);
 
   //! Constructs angle dimension between two planar faces.
   //! @param theFirstFace [in] the first face.
   //! @param theSecondFace [in] the second face.
-  Standard_EXPORT AIS_AngleDimension (const TopoDS_Face& theFirstFace,
-                                      const TopoDS_Face& theSecondFace);
+  Standard_EXPORT PrsDim_AngleDimension (const TopoDS_Face& theFirstFace,
+                                         const TopoDS_Face& theSecondFace);
 
   //! Constructs angle dimension between two planar faces.
   //! @param theFirstFace [in] the first face.
   //! @param theSecondFace [in] the second face.
   //! @param thePoint [in] the point which the dimension plane should pass through.
   //! This point can lay on the one of the faces or not.
-  Standard_EXPORT AIS_AngleDimension (const TopoDS_Face& theFirstFace,
-                                      const TopoDS_Face& theSecondFace,
-                                      const gp_Pnt& thePoint);
+  Standard_EXPORT PrsDim_AngleDimension (const TopoDS_Face& theFirstFace,
+                                         const TopoDS_Face& theSecondFace,
+                                         const gp_Pnt& thePoint);
 
 public:
 
   //! @return first point forming the angle.
-  const gp_Pnt& FirstPoint() const
-  {
-    return myFirstPoint;
-  }
+  const gp_Pnt& FirstPoint() const { return myFirstPoint; }
 
   //! @return second point forming the angle.
-  const gp_Pnt& SecondPoint() const
-  {
-    return mySecondPoint;
-  }
+  const gp_Pnt& SecondPoint() const { return mySecondPoint; }
 
   //! @return center point forming the angle.
-  const gp_Pnt& CenterPoint() const
-  {
-    return myCenterPoint;
-  }
+  const gp_Pnt& CenterPoint() const { return myCenterPoint; }
 
   //! @return first argument shape.
-  const TopoDS_Shape& FirstShape() const
-  {
-    return myFirstShape;
-  }
+  const TopoDS_Shape& FirstShape() const { return myFirstShape; }
 
   //! @return second argument shape.
-  const TopoDS_Shape& SecondShape() const
-  {
-    return mySecondShape;
-  }
+  const TopoDS_Shape& SecondShape() const { return mySecondShape; }
 
   //! @return third argument shape.
-  const TopoDS_Shape& ThirdShape() const
-  {
-    return myThirdShape;
-  }
+  const TopoDS_Shape& ThirdShape() const { return myThirdShape; }
 
 public:
 
@@ -208,37 +188,21 @@ public:
   //! - if aTextPos is not between reflections of attach points -> Left or Right + negative flyout
   Standard_EXPORT virtual void SetTextPosition (const gp_Pnt& theTextPos) Standard_OVERRIDE;
 
-  Standard_EXPORT virtual const gp_Pnt GetTextPosition () const Standard_OVERRIDE;
+  Standard_EXPORT virtual gp_Pnt GetTextPosition () const Standard_OVERRIDE;
 
   //! Sets angle type.
   //! @param theType [in] the type value.
-  void SetType(const AIS_TypeOfAngle theType)
-  {
-    myType = theType;
-  }
+  void SetType (const PrsDim_TypeOfAngle theType) { myType = theType; }
 
   //! @return the current angle type.
-  AIS_TypeOfAngle GetType() const
-  {
-    return myType;
-  }
+  PrsDim_TypeOfAngle GetType() const { return myType; }
 
   //! Sets visible arrows type
   //! @param theType [in] the type of visibility of arrows.
-  void SetArrowsVisibility(const AIS_TypeOfAngleArrowVisibility& theType)
-  {
-    myArrowsVisibility = theType;
-  }
+  void SetArrowsVisibility (const PrsDim_TypeOfAngleArrowVisibility& theType) { myArrowsVisibility = theType; }
 
   //! @return the type of visibility of arrows.
-  AIS_TypeOfAngleArrowVisibility GetArrowsVisibility() const
-  {
-    return myArrowsVisibility;
-  }
-
-public:
-
-  DEFINE_STANDARD_RTTIEXT(AIS_AngleDimension,AIS_Dimension)
+  PrsDim_TypeOfAngleArrowVisibility GetArrowsVisibility() const { return myArrowsVisibility; }
 
 protected:
 
@@ -353,7 +317,7 @@ protected:
   //! It defines some kind of dimension positioning over the faces.
   //! @return TRUE if the angular dimension can be constructed
   //!         for the passed faces.
-  Standard_EXPORT Standard_Boolean InitTwoFacesAngle (const gp_Pnt thePointOnFirstFace);
+  Standard_EXPORT Standard_Boolean InitTwoFacesAngle (const gp_Pnt& thePointOnFirstFace);
 
   //! Init angular dimension to measure cone face.
   //! @return TRUE if the angular dimension can be constructed
@@ -372,11 +336,11 @@ protected:
   //! Returns true if the arrow should be visible
   //! @param theArrowType an arrow type
   //! @return TRUE if the arrow should be visible
-  Standard_EXPORT Standard_Boolean isArrowVisible(const AIS_TypeOfAngleArrowVisibility& theArrowType) const;
+  Standard_EXPORT Standard_Boolean isArrowVisible (const PrsDim_TypeOfAngleArrowVisibility theArrowType) const;
 
 private:
-  AIS_TypeOfAngle myType; //!< type of angle
-  AIS_TypeOfAngleArrowVisibility myArrowsVisibility; //!< type of arrows visibility
+  PrsDim_TypeOfAngle myType; //!< type of angle
+  PrsDim_TypeOfAngleArrowVisibility myArrowsVisibility; //!< type of arrows visibility
 
   gp_Pnt myFirstPoint;
   gp_Pnt mySecondPoint;
@@ -386,4 +350,4 @@ private:
   TopoDS_Shape myThirdShape;
 };
 
-#endif // _AIS_AngleDimension_HeaderFile
+#endif // _PrsDim_AngleDimension_HeaderFile