Salome HOME
PAL7508. Correct behaviour of GetShapesOnPlane().
[modules/geom.git] / src / GEOMImpl / GEOMImpl_ITranslate.hxx
1 //NOTE: This is an intreface to a function for the Translate creation.
2
3
4 #include "GEOM_Function.hxx"
5
6 #define TRANSLATE_ARG_POINT1   1  
7 #define TRANSLATE_ARG_POINT2   2
8 #define TRANSLATE_ARG_VECTOR   3
9 #define TRANSLATE_ARG_REF      4
10 #define TRANSLATE_ARG_SHAPE    5
11 #define TRANSLATE_ARG_ORIGINAL 6
12 #define TRANSLATE_ARG_STEP1      7
13 #define TRANSLATE_ARG_NBITER1   8
14 #define TRANSLATE_ARG_STEP2      9
15 #define TRANSLATE_ARG_NBITER2   10
16 #define TRANSLATE_ARG_VECTOR2 11
17 #define TRANSLATE_ARG_DX  12
18 #define TRANSLATE_ARG_DY  13  
19 #define TRANSLATE_ARG_DZ  14  
20
21 class GEOMImpl_ITranslate
22 {
23  public:
24   
25   GEOMImpl_ITranslate(Handle(GEOM_Function) theFunction): _func(theFunction) {}
26   
27   void SetPoint1(Handle(GEOM_Function) thePoint1) { _func->SetReference(TRANSLATE_ARG_POINT1, thePoint1); }
28   
29   Handle(GEOM_Function) GetPoint1() { return _func->GetReference(TRANSLATE_ARG_POINT1); }
30   
31   void SetPoint2(Handle(GEOM_Function) thePoint2) { _func->SetReference(TRANSLATE_ARG_POINT2, thePoint2); }
32   
33   Handle(GEOM_Function) GetPoint2() { return _func->GetReference(TRANSLATE_ARG_POINT2); }
34   
35   void SetVector(Handle(GEOM_Function) theVector) { _func->SetReference(TRANSLATE_ARG_VECTOR, theVector); }
36   
37   Handle(GEOM_Function) GetVector() { return _func->GetReference(TRANSLATE_ARG_VECTOR); } 
38   
39   void SetShape(const TopoDS_Shape& theShape) { _func->SetShape(TRANSLATE_ARG_SHAPE, theShape); }
40   
41   TopoDS_Shape GetShape() { return _func->GetShape(TRANSLATE_ARG_SHAPE); }
42
43   void SetOriginal(Handle(GEOM_Function) theOriginal) { _func->SetReference(TRANSLATE_ARG_ORIGINAL, theOriginal); }
44
45   Handle(GEOM_Function) GetOriginal() { return _func->GetReference(TRANSLATE_ARG_ORIGINAL); }
46   
47   void SetStep1(double theStep) { return _func->SetReal(TRANSLATE_ARG_STEP1, theStep); }
48
49   double GetStep1() { return _func->GetReal(TRANSLATE_ARG_STEP1); }
50
51   void SetNbIter1(int theNbIter) { _func->SetInteger(TRANSLATE_ARG_NBITER1, theNbIter); }
52
53   int GetNbIter1() { return _func->GetInteger(TRANSLATE_ARG_NBITER1); } 
54
55   void SetStep2(double theStep) { return _func->SetReal(TRANSLATE_ARG_STEP2, theStep); }
56
57   double GetStep2() { return _func->GetReal(TRANSLATE_ARG_STEP2); }
58
59   void SetNbIter2(int theNbIter) { _func->SetInteger(TRANSLATE_ARG_NBITER2, theNbIter); }
60
61   int GetNbIter2() { return _func->GetInteger(TRANSLATE_ARG_NBITER2); } 
62
63   void SetVector2(Handle(GEOM_Function) theVector) { _func->SetReference(TRANSLATE_ARG_VECTOR2, theVector); }
64   
65   Handle(GEOM_Function) GetVector2() { return _func->GetReference(TRANSLATE_ARG_VECTOR2); } 
66
67   void SetDX(double theDX) { return _func->SetReal(TRANSLATE_ARG_DX, theDX); }
68
69   double GetDX() { return _func->GetReal(TRANSLATE_ARG_DX); }
70
71   void SetDY(double theDY) { return _func->SetReal(TRANSLATE_ARG_DY, theDY); }
72
73   double GetDY() { return _func->GetReal(TRANSLATE_ARG_DY); }
74
75   void SetDZ(double theDZ) { return _func->SetReal(TRANSLATE_ARG_DZ, theDZ); }
76
77   double GetDZ() { return _func->GetReal(TRANSLATE_ARG_DZ); }
78
79  private:
80   
81   Handle(GEOM_Function) _func;  
82 };