LibreOffice Module slideshow (master) 1
|
this class is a generic CounterClockWise(CCW) rotation with an axis angle More...
#include <Operation.hxx>
Public Member Functions | |
virtual void | interpolate (glm::mat4 &matrix, double t, double SlideWidthScale, double SlideHeightScale) const override |
this is the function that is called to give the Operation to OpenGL. More... | |
SRotate (const glm::vec3 &Axis, const glm::vec3 &Origin, double Angle, bool bInter, double T0, double T1) | |
Constructor. More... | |
Public Member Functions inherited from Operation | |
virtual | ~Operation () |
Operation (const Operation &)=delete | |
Operation & | operator= (const Operation &)=delete |
virtual void | interpolate (glm::mat4 &matrix, double t, double SlideWidthScale, double SlideHeightScale) const =0 |
this is the function that is called to give the Operation to OpenGL. More... | |
Private Attributes | |
glm::vec3 | axis |
axis to rotate CCW about More... | |
glm::vec3 | origin |
position that rotation axis runs through More... | |
double | angle |
angle in degrees of CCW rotation More... | |
Additional Inherited Members | |
Protected Member Functions inherited from Operation | |
Operation (bool bInterpolate, double nT0, double nT1) | |
Protected Attributes inherited from Operation | |
bool | mbInterpolate |
Should this operation be interpolated . More... | |
double | mnT0 |
time to begin the transformation More... | |
double | mnT1 |
time to finish the transformation More... | |
this class is a generic CounterClockWise(CCW) rotation with an axis angle
Definition at line 79 of file Operation.hxx.
SRotate::SRotate | ( | const glm::vec3 & | Axis, |
const glm::vec3 & | Origin, | ||
double | Angle, | ||
bool | bInter, | ||
double | T0, | ||
double | T1 | ||
) |
Constructor.
Axis | axis to rotate about |
Origin | position that rotation axis runs through |
Angle | angle in degrees of CCW rotation |
bInter | see Operation |
T0 | transformation starting time |
T1 | transformation ending time |
Definition at line 38 of file Operation.cxx.
References deg2rad().
|
overridevirtual |
this is the function that is called to give the Operation to OpenGL.
t | time from t = 0 to t = 1 |
SlideWidthScale | width of slide divided by width of window |
SlideHeightScale | height of slide divided by height of window |
Implements Operation.
Definition at line 133 of file Operation.cxx.
References angle, axis, intervalInter(), Operation::mbInterpolate, Operation::mnT0, Operation::mnT1, origin, and t.
|
private |
angle in degrees of CCW rotation
Definition at line 118 of file Operation.hxx.
Referenced by interpolate().
|
private |
|
private |
position that rotation axis runs through
Definition at line 114 of file Operation.hxx.
Referenced by interpolate().