1 // Copyright (C) 2014-20xx CEA/DEN, EDF R&D
3 // File: GeomAPI_XYZ.hxx
4 // Created: 13 July 2015
5 // Author: Mikhail PONIKAROV
7 #ifndef GeomAPI_Trsf_H_
8 #define GeomAPI_Trsf_H_
10 #include <GeomAPI_Interface.h>
15 /**\class GeomAPI_Trsf
17 * \brief Keep the transformation matrix coefficients
20 class GeomAPI_Trsf : public GeomAPI_Interface
23 /// Keeps no transformation, it may be set by setImpl
24 GEOMAPI_EXPORT GeomAPI_Trsf();
25 /// Takes the pointer to existing transformation
26 GEOMAPI_EXPORT GeomAPI_Trsf(void* theTrsf);
28 /** \brief Sets a translation transformation.
29 * \param[in] theAxis translation axis.
30 * \param[in] theDistance translation distance.
32 GEOMAPI_EXPORT void setTranslation(const std::shared_ptr<GeomAPI_Ax1> theAxis,
33 const double theDistance);
35 /** \brief Sets a rotation transformation.
36 * \param[in] theAxis rotation axis.
37 * \param[in] theAngle rotation angle(in degree).
39 GEOMAPI_EXPORT void setRotation(const std::shared_ptr<GeomAPI_Ax1> theAxis,
40 const double theAngle);