Classes | |
class | oglplus::Angle< T > |
Class implementing planar angle-related functionality. More... | |
class | oglplus::BezierCurves< Type, Parameter, Order > |
A sequence of Bezier curves, possibly connected at end points. More... | |
class | oglplus::CubicBezierLoop< Type, Parameter > |
A closed smooth cubic Bezier spline passing through all input points. More... | |
class | oglplus::ModelMatrix< T > |
Class implementing model transformation matrix named constructors. More... | |
class | oglplus::CameraMatrix< T > |
Class implementing camera matrix named constructors. More... | |
class | oglplus::Plane< T > |
Class implementing plane-related functionality. More... | |
class | oglplus::Quaternion< T > |
Template class for quaternions. More... | |
class | oglplus::QuaternionSLERP< T > |
Functor template for quaternion spherical-linear interpolation. More... | |
class | oglplus::BaseSLERP< Value, T > |
Base template for spherical-linear interpolation functors. More... | |
class | oglplus::Sphere< T > |
Class implementing sphere-related functionality. More... | |
class | oglplus::Vector< T, N > |
Basic template for vector types. More... | |
Typedefs | |
typedef Matrix< GLfloat, 2, 2 > | oglplus::Mat2f |
2x2 float matrix | |
typedef Matrix< GLfloat, 2, 3 > | oglplus::Mat2x3f |
2x3 float matrix | |
typedef Matrix< GLfloat, 2, 4 > | oglplus::Mat2x4f |
2x4 float matrix | |
typedef Matrix< GLfloat, 3, 2 > | oglplus::Mat3x2f |
3x2 float matrix | |
typedef Matrix< GLfloat, 3, 3 > | oglplus::Mat3f |
3x3 float matrix | |
typedef Matrix< GLfloat, 3, 4 > | oglplus::Mat3x4f |
3x4 float matrix | |
typedef Matrix< GLfloat, 4, 2 > | oglplus::Mat4x2f |
4x2 float matrix | |
typedef Matrix< GLfloat, 4, 3 > | oglplus::Mat4x3f |
4x3 float matrix | |
typedef Matrix< GLfloat, 4, 4 > | oglplus::Mat4f |
4x4 float matrix | |
typedef Matrix< GLdouble, 2, 2 > | oglplus::Mat2d |
2x2 double-precision matrix | |
typedef Matrix< GLdouble, 2, 3 > | oglplus::Mat2x3d |
2x3 double-precision matrix | |
typedef Matrix< GLdouble, 2, 4 > | oglplus::Mat2x4d |
2x4 double-precision matrix | |
typedef Matrix< GLdouble, 3, 2 > | oglplus::Mat3x2d |
3x2 double-precision matrix | |
typedef Matrix< GLdouble, 3, 3 > | oglplus::Mat3d |
3x3 double-precision matrix | |
typedef Matrix< GLdouble, 3, 4 > | oglplus::Mat3x4d |
3x4 double-precision matrix | |
typedef Matrix< GLdouble, 4, 2 > | oglplus::Mat4x2d |
4x2 double-precision matrix | |
typedef Matrix< GLdouble, 4, 3 > | oglplus::Mat4x3d |
4x3 double-precision matrix | |
typedef Matrix< GLdouble, 4, 4 > | oglplus::Mat4d |
4x4 double-precision matrix | |
typedef ModelMatrix< GLfloat > | oglplus::ModelMatrixf |
Model transformation float matrix. | |
typedef ModelMatrix< GLdouble > | oglplus::ModelMatrixd |
Model transformation double precision matrix. | |
typedef CameraMatrix< GLfloat > | oglplus::CamMatrixf |
Camera matrix using float numbers. | |
typedef CameraMatrix< GLdouble > | oglplus::CamMatrixd |
Camera matrix using double precition numbers. | |
typedef Quaternion< GLfloat > | oglplus::Quatf |
Float quaternion. | |
typedef Quaternion< GLdouble > | oglplus::Quatd |
Double-precision quaternion. | |
typedef Vector< GLint, 1 > | oglplus::Vec1i |
1D int (degenerate) vector | |
typedef Vector< GLint, 2 > | oglplus::Vec2i |
2D int vector | |
typedef Vector< GLint, 3 > | oglplus::Vec3i |
3D int vector | |
typedef Vector< GLint, 4 > | oglplus::Vec4i |
4D int vector | |
typedef Vector< GLfloat, 1 > | oglplus::Vec1f |
1D float (degenerate) vector | |
typedef Vector< GLfloat, 2 > | oglplus::Vec2f |
2D float vector | |
typedef Vector< GLfloat, 3 > | oglplus::Vec3f |
3D float vector | |
typedef Vector< GLfloat, 4 > | oglplus::Vec4f |
4D float vector | |
typedef Vector< GLdouble, 1 > | oglplus::Vec1d |
1D double-precision (degenerate) vector | |
typedef Vector< GLdouble, 2 > | oglplus::Vec2d |
2D double-precision vector | |
typedef Vector< GLdouble, 3 > | oglplus::Vec3d |
3D double-precision vector | |
typedef Vector< GLdouble, 4 > | oglplus::Vec4d |
4D double-precision vector | |
Functions | |
Angle< AngleValueType > | oglplus::Radians (AngleValueType val_rad) |
Creates a new angle from a value in radians. More... | |
Angle< AngleValueType > | oglplus::Degrees (AngleValueType val_deg) |
Creates a new angle from a value in degrees. More... | |
Angle< AngleValueType > | oglplus::FullCircles (AngleValueType value) |
Creates a new angle from a value in "full circles" (i.e. 360 degrees) More... | |
Angle< AngleValueType > | oglplus::RightAngles (AngleValueType value) |
Creates a new angle from a value in "right angles" (i.e. 90 deg.) More... | |
Angle< AngleValueType > | oglplus::ArcSin (AngleValueType x) |
Creates a new angle using the arc sine function. More... | |
Angle< AngleValueType > | oglplus::ArcCos (AngleValueType x) |
Creates a new angle using the arc cosine function. More... | |
Angle< AngleValueType > | oglplus::ArcTan (AngleValueType x) |
Creates a new angle using the arc tangent function. More... | |
Angle< AngleValueType > | oglplus::ArcTan (AngleValueType y, AngleValueType x) |
Creates a new angle using the arc tangent function with 2 parameters. More... | |
template<typename T > | |
T | oglplus::SineWave (T t) |
Returns a value on a sine wave at the specified point. More... | |
template<typename T > | |
T | oglplus::SineWave01 (T t) |
Returns a value on a sine wave transformed to range <0, 1> More... | |
template<typename T > | |
T | oglplus::CosineWave (T t) |
Returns a value on a cosine wave at the specified point. More... | |
template<typename T > | |
T | oglplus::CosineWave01 (T t) |
Returns a value on a cosine wave transformed to range <0, 1> More... | |
This group contains classes and functions which do not directly deal with OpenGL, but are related to computer graphics, like angles, vectors, matrices, etc. The OGLplus example make use these classes, but the library does not force you to use them if you don't want to.
Angle<AngleValueType> oglplus::ArcCos | ( | AngleValueType | x | ) |
Creates a new angle using the arc cosine function.
x | the value must be between -1.0 and 1.0 |
References oglplus::Angle< T >::ArcCos().
Angle<AngleValueType> oglplus::ArcSin | ( | AngleValueType | x | ) |
Creates a new angle using the arc sine function.
x | the value must be between -1.0 and 1.0 |
References oglplus::Angle< T >::ArcSin().
Angle<AngleValueType> oglplus::ArcTan | ( | AngleValueType | x | ) |
Creates a new angle using the arc tangent function.
References oglplus::Angle< T >::Radians().
Angle<AngleValueType> oglplus::ArcTan | ( | AngleValueType | y, |
AngleValueType | x | ||
) |
Creates a new angle using the arc tangent function with 2 parameters.
References oglplus::Angle< T >::Radians().
T oglplus::CosineWave | ( | T | t | ) |
Returns a value on a cosine wave at the specified point.
This function returns the value of cos(2.PI.t
), i.e. integer values of t
are the ends of the previous full cosine wave and the begining of the next "iteration". The following is true:
t | the point for which to calculate the value on the wave. |
Referenced by oglplus::CosineWave01().
T oglplus::CosineWave01 | ( | T | t | ) |
Returns a value on a cosine wave transformed to range <0, 1>
This function returns the value of (cos(2.PI.t
)+1)/2, i.e. integer values of t
are the ends of the previous full cosine wave and the begining of the next "iteration". The following is true:
t | the point for which to calculate the value on the wave. |
References oglplus::CosineWave().
Angle<AngleValueType> oglplus::Degrees | ( | AngleValueType | val_deg | ) |
Creates a new angle from a value in degrees.
This function creates a new instance of Angle<AngleValueType>
from a floating-point value in degrees. Examples:
val_deg | a value in degrees |
References oglplus::Angle< T >::Degrees().
Angle<AngleValueType> oglplus::FullCircles | ( | AngleValueType | value | ) |
Creates a new angle from a value in "full circles" (i.e. 360 degrees)
This function creates a new angle from a value specifying the fraction of a full 360 degree (2 pi radians) angle. For example the following is true:
value | a value in 360-degree units |
References oglplus::Angle< T >::Radians().
Referenced by oglplus::shapes::RevolveY< Type >::Bitangents(), oglplus::shapes::RevolveY< Type >::Normals(), oglplus::shapes::RevolveY< Type >::Positions(), and oglplus::shapes::RevolveY< Type >::Tangents().
Angle<AngleValueType> oglplus::Radians | ( | AngleValueType | val_rad | ) |
Creates a new angle from a value in radians.
This function creates a new instance of Angle<T>
from a floating-point value in radians.
val_rad | a value in radians |
References oglplus::Angle< T >::Radians().
Angle<AngleValueType> oglplus::RightAngles | ( | AngleValueType | value | ) |
Creates a new angle from a value in "right angles" (i.e. 90 deg.)
This function creates a new angle from a value specifying the fraction of a quarter 90 degree (pi/2 radians) angle. For example the following is true:
value | a value in 90-degree units |
References oglplus::Angle< T >::Radians().
T oglplus::SineWave | ( | T | t | ) |
Returns a value on a sine wave at the specified point.
This function returns the value of sin(2.PI.t
), i.e. integer values of t
are the ends of the previous full sine wave and the begining of the next "iteration". The following is true:
t | the point for which to calculate the value on the wave. |
Referenced by oglplus::SineWave01().
T oglplus::SineWave01 | ( | T | t | ) |
Returns a value on a sine wave transformed to range <0, 1>
This function returns the value of (sin(2.PI.t
)+1)/2, i.e. integer values of t
are the ends of the previous full sine wave and the begining of the next "iteration". The following is true:
t | the point for which to calculate the value on the wave. |
References oglplus::SineWave().