0028954: Visualization - implement interactive object for camera manipulations
[occt.git] / src / Prs3d / Prs3d_ToolDisk.hxx
index 1e66093..6897083 100644 (file)
@@ -37,18 +37,31 @@ public:
                                   const Standard_Real    theOuterRadius,
                                   const Standard_Integer theNbSlices,
                                   const Standard_Integer theNbStacks);
+
+  //! Set angle range in radians [0, 2*PI] by default.
+  //! @param theStartAngle [in] Start angle in counter clockwise order
+  //! @param theEndAngle   [in] End   angle in counter clockwise order
+  void SetAngleRange (Standard_Real theStartAngle,
+                      Standard_Real theEndAngle)
+  {
+    myStartAngle = theStartAngle;
+    myEndAngle   = theEndAngle;
+  }
+
 protected:
 
   //! Computes vertex at given parameter location of the surface.
   Standard_EXPORT virtual gp_Pnt Vertex (const Standard_Real theU, const Standard_Real theV) Standard_OVERRIDE;
 
   //! Computes normal at given parameter location of the surface.
-  Standard_EXPORT virtual gp_Dir Normal (const Standard_Real theU, const Standard_Real theV) Standard_OVERRIDE;
+  virtual gp_Dir Normal (const Standard_Real , const Standard_Real ) Standard_OVERRIDE { return gp_Dir (0.0, 0.0, -1.0); }
 
 protected:
 
   Standard_Real myInnerRadius;
   Standard_Real myOuterRadius;
+  Standard_Real myStartAngle;  //!< Start angle in counter clockwise order
+  Standard_Real myEndAngle;    //!< End   angle in counter clockwise order
 
 };