/src/contrib/geom-5.1.2.7/inc_pythonocc/GEOMImpl_IRotate.hxx

http://pythonocc.googlecode.com/ · C++ Header · 85 lines · 39 code · 26 blank · 20 comment · 0 complexity · e28e73a6e0494ff2abd912367c15da4d MD5 · raw file

  1. // Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
  2. // CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
  3. //
  4. // This library is free software; you can redistribute it and/or
  5. // modify it under the terms of the GNU Lesser General Public
  6. // License as published by the Free Software Foundation; either
  7. // version 2.1 of the License.
  8. //
  9. // This library is distributed in the hope that it will be useful
  10. // but WITHOUT ANY WARRANTY; without even the implied warranty of
  11. // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
  12. // Lesser General Public License for more details.
  13. //
  14. // You should have received a copy of the GNU Lesser General Public
  15. // License along with this library; if not, write to the Free Software
  16. // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
  17. //
  18. // See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
  19. //
  20. //NOTE: This is an intreface to a function for the Rotate operation.
  21. #include "SGEOM_Function.hxx"
  22. #define ROTATE_ANGLE 1
  23. #define ROTATE_AXIS 2
  24. #define ROTATE_ORGN 3
  25. #define ROTATE_STEP1 4
  26. #define ROTATE_NBITER1 5
  27. #define ROTATE_NBITER2 6
  28. #define ROTATE_CENTRAL_POINT 7
  29. #define ROTATE_POINT1 8
  30. #define ROTATE_POINT2 9
  31. class GEOMImpl_IRotate
  32. {
  33. public:
  34. GEOMImpl_IRotate(Handle(GEOM_Function) theFunction): _func(theFunction) {}
  35. void SetCentPoint(Handle(GEOM_Function) theCentPoint) { _func->SetReference(ROTATE_CENTRAL_POINT, theCentPoint); }
  36. Handle(GEOM_Function) GetCentPoint() { return _func->GetReference(ROTATE_CENTRAL_POINT); }
  37. void SetPoint1(Handle(GEOM_Function) thePoint1) { _func->SetReference(ROTATE_POINT1, thePoint1); }
  38. Handle(GEOM_Function) GetPoint1() { return _func->GetReference(ROTATE_POINT1); }
  39. void SetPoint2(Handle(GEOM_Function) thePoint2) { _func->SetReference(ROTATE_POINT2, thePoint2); }
  40. Handle(GEOM_Function) GetPoint2() { return _func->GetReference(ROTATE_POINT2); }
  41. void SetAngle(Standard_Real theAngle) { _func->SetReal(ROTATE_ANGLE, theAngle); }
  42. void SetAngle(const TCollection_AsciiString& theAngle) { _func->SetReal(ROTATE_ANGLE, theAngle); }
  43. Standard_Real GetAngle() { return _func->GetReal(ROTATE_ANGLE); }
  44. void SetAxis(Handle(GEOM_Function) theVector) { _func->SetReference(ROTATE_AXIS, theVector); }
  45. Handle(GEOM_Function) GetAxis() { return _func->GetReference(ROTATE_AXIS); }
  46. void SetOriginal(Handle(GEOM_Function) theOriginal) { _func->SetReference(ROTATE_ORGN, theOriginal); }
  47. Handle(GEOM_Function) GetOriginal() { return _func->GetReference(ROTATE_ORGN); }
  48. void SetStep(double theStep) { return _func->SetReal(ROTATE_STEP1, theStep); }
  49. void SetStep(const TCollection_AsciiString& theStep) { return _func->SetReal(ROTATE_STEP1, theStep); }
  50. double GetStep() { return _func->GetReal(ROTATE_STEP1); }
  51. void SetNbIter1(int theNbIter) { _func->SetInteger(ROTATE_NBITER1, theNbIter); }
  52. void SetNbIter1(const TCollection_AsciiString& theNbIter) { _func->SetInteger(ROTATE_NBITER1, theNbIter); }
  53. int GetNbIter1() { return _func->GetInteger(ROTATE_NBITER1); }
  54. void SetNbIter2(int theNbIter) { _func->SetInteger(ROTATE_NBITER2, theNbIter); }
  55. void SetNbIter2(const TCollection_AsciiString& theNbIter) { _func->SetInteger(ROTATE_NBITER2, theNbIter); }
  56. int GetNbIter2() { return _func->GetInteger(ROTATE_NBITER2); }
  57. private:
  58. Handle(GEOM_Function) _func;
  59. };