Class implementing planar angle-related functionality. More...
#include </home/chochlik/devel/oglplus/include/oglplus/math/angle.hpp>
Public Member Functions | |
| Angle (void) | |
| Constructs a zero angle. | |
| Angle (const Angle &)=default | |
| Angle is copy constructible. | |
| Angle (Angle &&)=default | |
| Angle is move constructible. | |
| template<typename U > | |
| Angle (const Angle< U > &other) | |
| Copy construction from angles using different underlying type. | |
| T | Value (void) const |
| Returns the value of the angle in radians. | |
| T | ValueInDegrees (void) const |
| Returns the value of the angle in degrees. | |
| T | ValueInRightAngles (void) const |
| Returns the value of the angle in number of right angles. | |
| T | ValueInFullCircles (void) const |
| Returns the value of the angle in number of full circles. | |
| Angle | Negated (void) const |
| Negation. | |
| Angle & | operator+= (const Angle &b) |
| Addition operator. | |
| Angle & | operator-= (const Angle &b) |
| Subtraction operator. | |
| Angle & | operator*= (T mult) |
| Multiplication by constant operator. | |
| Angle & | operator/= (T div) |
| Division by constant operator. | |
| T | Sin (void) const |
| Returns the sine of the angle. | |
| T | Cos (void) const |
| Returns the cosine of the angle. | |
| T | Tan (void) const |
| Returns the tangent of the angle. | |
Static Public Member Functions | |
| static Angle | Radians (T val_rad) |
| Constructs a new angle from value in radians. | |
| static Angle | Degrees (T val_deg) |
| Constructs a new angle from value in degrees. | |
| static Angle | ArcSin (T x) |
| Constructs a new angle using arc sine. | |
| static Angle | ArcCos (T x) |
| Constructs a new angle using arc cosine. | |
Friends | |
| bool | operator== (const Angle &a, const Angle &b) |
| Equality comparison. | |
| bool | operator!= (const Angle &a, const Angle &b) |
| Inequality comparison. | |
| bool | operator< (const Angle &a, const Angle &b) |
| Less than comparison. | |
| bool | operator> (const Angle &a, const Angle &b) |
| Greater than comparison. | |
| bool | operator<= (const Angle &a, const Angle &b) |
| Less than/equal comparison. | |
| bool | operator>= (const Angle &a, const Angle &b) |
| Greater than/equal comparison. | |
| Angle | Negate (const Angle &angle) |
| Negation. | |
| Angle | operator- (const Angle &angle) |
| Negation operator. | |
| Angle | Add (const Angle &a, const Angle &b) |
| Addition. | |
| Angle | operator+ (const Angle &a, const Angle &b) |
| Addition operator. | |
| Angle | Subtract (const Angle &a, const Angle &b) |
| Subtraction. | |
| Angle | operator- (const Angle &a, const Angle &b) |
| Subtraction operator. | |
| Angle | Multiply (const Angle &a, T mult) |
| Multiplication by constant. | |
| Angle | operator* (const Angle &a, T mult) |
| Multiplication by constant operator. | |
| Angle | operator* (T mult, const Angle &a) |
| Multiplication by constant operator. | |
| Angle | Divide (const Angle &a, T div) |
| Division by constant. | |
| Angle | operator/ (const Angle &a, T div) |
| Division by constant operator. | |
| T | Ratio (const Angle &a, const Angle &b) |
| Angle ratio. | |
| T | operator/ (const Angle &a, const Angle &b) |
| Ratio operator. | |
| T | Sin (const Angle &a) |
| Returns the sine of the angle. | |
| T | Cos (const Angle &a) |
| Returns the cosine of the angle. | |
| T | Tan (const Angle &a) |
| Returns the tangent of the angle. | |
Class implementing planar angle-related functionality.
Angle is a lightweight class allowing more natural construction and usage of planar angle values. The storage requirements are the same as for the template parameter type T, but the Angle template gives the T type special meaning and implements a set of angle-related member and friend functions. There are also several associated free functions for creating new instances of Angle.