Salome HOME
PAL7508. Correct behaviour of GetShapesOnPlane().
[modules/geom.git] / src / GEOMImpl / GEOMImpl_IRevolution.hxx
1 //NOTE: This is an intreface to a function for the Revolution creation.
2
3
4 #include "GEOM_Function.hxx"
5
6 #define REVOL_ARG_ANGLE 1
7 #define REVOL_ARG_AXIS  2
8 #define REVOL_ARG_BASE  3
9
10 class GEOMImpl_IRevolution
11 {
12  public:
13
14   GEOMImpl_IRevolution(Handle(GEOM_Function) theFunction): _func(theFunction) {}
15
16   void SetAngle(double theAngle) { _func->SetReal(REVOL_ARG_ANGLE, theAngle); }
17
18   double GetAngle() { return _func->GetReal(REVOL_ARG_ANGLE); }
19
20   void SetAxis(Handle(GEOM_Function) theRefAxis) { _func->SetReference(REVOL_ARG_AXIS, theRefAxis); }
21
22   Handle(GEOM_Function) GetAxis() { return _func->GetReference(REVOL_ARG_AXIS); }
23
24   void SetBase(Handle(GEOM_Function) theRefBase) { _func->SetReference(REVOL_ARG_BASE, theRefBase); }
25
26   Handle(GEOM_Function) GetBase() { return _func->GetReference(REVOL_ARG_BASE); }
27
28  private:
29
30   Handle(GEOM_Function) _func;
31 };