Salome HOME
PAL7508: Development of GetInPlace() functionality
[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_ORIGINAL 6
10 #define TRANSLATE_ARG_STEP1    7
11 #define TRANSLATE_ARG_NBITER1  8
12 #define TRANSLATE_ARG_STEP2    9
13 #define TRANSLATE_ARG_NBITER2  10
14 #define TRANSLATE_ARG_VECTOR2  11
15 #define TRANSLATE_ARG_DX  12
16 #define TRANSLATE_ARG_DY  13  
17 #define TRANSLATE_ARG_DZ  14  
18
19 class GEOMImpl_ITranslate
20 {
21  public:
22   
23   GEOMImpl_ITranslate(Handle(GEOM_Function) theFunction): _func(theFunction) {}
24   
25   void SetPoint1(Handle(GEOM_Function) thePoint1) { _func->SetReference(TRANSLATE_ARG_POINT1, thePoint1); }
26   
27   Handle(GEOM_Function) GetPoint1() { return _func->GetReference(TRANSLATE_ARG_POINT1); }
28   
29   void SetPoint2(Handle(GEOM_Function) thePoint2) { _func->SetReference(TRANSLATE_ARG_POINT2, thePoint2); }
30   
31   Handle(GEOM_Function) GetPoint2() { return _func->GetReference(TRANSLATE_ARG_POINT2); }
32   
33   void SetVector(Handle(GEOM_Function) theVector) { _func->SetReference(TRANSLATE_ARG_VECTOR, theVector); }
34   
35   Handle(GEOM_Function) GetVector() { return _func->GetReference(TRANSLATE_ARG_VECTOR); } 
36   
37   void SetOriginal(Handle(GEOM_Function) theOriginal) { _func->SetReference(TRANSLATE_ARG_ORIGINAL, theOriginal); }
38
39   Handle(GEOM_Function) GetOriginal() { return _func->GetReference(TRANSLATE_ARG_ORIGINAL); }
40   
41   void SetStep1(double theStep) { return _func->SetReal(TRANSLATE_ARG_STEP1, theStep); }
42
43   double GetStep1() { return _func->GetReal(TRANSLATE_ARG_STEP1); }
44
45   void SetNbIter1(int theNbIter) { _func->SetInteger(TRANSLATE_ARG_NBITER1, theNbIter); }
46
47   int GetNbIter1() { return _func->GetInteger(TRANSLATE_ARG_NBITER1); } 
48
49   void SetStep2(double theStep) { return _func->SetReal(TRANSLATE_ARG_STEP2, theStep); }
50
51   double GetStep2() { return _func->GetReal(TRANSLATE_ARG_STEP2); }
52
53   void SetNbIter2(int theNbIter) { _func->SetInteger(TRANSLATE_ARG_NBITER2, theNbIter); }
54
55   int GetNbIter2() { return _func->GetInteger(TRANSLATE_ARG_NBITER2); } 
56
57   void SetVector2(Handle(GEOM_Function) theVector) { _func->SetReference(TRANSLATE_ARG_VECTOR2, theVector); }
58   
59   Handle(GEOM_Function) GetVector2() { return _func->GetReference(TRANSLATE_ARG_VECTOR2); } 
60
61   void SetDX(double theDX) { return _func->SetReal(TRANSLATE_ARG_DX, theDX); }
62
63   double GetDX() { return _func->GetReal(TRANSLATE_ARG_DX); }
64
65   void SetDY(double theDY) { return _func->SetReal(TRANSLATE_ARG_DY, theDY); }
66
67   double GetDY() { return _func->GetReal(TRANSLATE_ARG_DY); }
68
69   void SetDZ(double theDZ) { return _func->SetReal(TRANSLATE_ARG_DZ, theDZ); }
70
71   double GetDZ() { return _func->GetReal(TRANSLATE_ARG_DZ); }
72
73  private:
74   
75   Handle(GEOM_Function) _func;  
76 };