|
| Vector3 () noexcept |
| Construct a zero vector.
|
|
| Vector3 (const Vector3 &vector) noexcept=default |
| Copy-construct from another vector.
|
|
| Vector3 (float x, float y, float z) noexcept |
| Construct from coordinates.
|
|
| Vector3 (float x, float y) noexcept |
| Construct from two-dimensional coordinates (for Urho2D).
|
|
| Vector3 (const float data[]) noexcept |
| Construct from a float array.
|
|
Vector3 & | operator= (const Vector3 &rhs) noexcept=default |
| Assign from another vector.
|
|
bool | operator== (const Vector3 &rhs) const |
| Test for equality with another vector without epsilon.
|
|
bool | operator!= (const Vector3 &rhs) const |
| Test for inequality with another vector without epsilon.
|
|
Vector3 | operator+ (const Vector3 &rhs) const |
| Add a vector.
|
|
Vector3 | operator- () const |
| Return negation.
|
|
Vector3 | operator- (const Vector3 &rhs) const |
| Subtract a vector.
|
|
Vector3 | operator* (float rhs) const |
| Multiply with a scalar.
|
|
Vector3 | operator* (const Vector3 &rhs) const |
| Multiply with a vector.
|
|
Vector3 | operator/ (float rhs) const |
| Divide by a scalar.
|
|
Vector3 | operator/ (const Vector3 &rhs) const |
| Divide by a vector.
|
|
Vector3 & | operator+= (const Vector3 &rhs) |
| Add-assign a vector.
|
|
Vector3 & | operator-= (const Vector3 &rhs) |
| Subtract-assign a vector.
|
|
Vector3 & | operator*= (float rhs) |
| Multiply-assign a scalar.
|
|
Vector3 & | operator*= (const Vector3 &rhs) |
| Multiply-assign a vector.
|
|
Vector3 & | operator/= (float rhs) |
| Divide-assign a scalar.
|
|
Vector3 & | operator/= (const Vector3 &rhs) |
| Divide-assign a vector.
|
|
void | Normalize () |
| Normalize to unit length.
|
|
float | Length () const |
|
float | LengthSquared () const |
|
float | DotProduct (const Vector3 &rhs) const |
| Calculate dot product.
|
|
float | AbsDotProduct (const Vector3 &rhs) const |
| Calculate absolute dot product.
|
|
float | ProjectOntoAxis (const Vector3 &axis) const |
| Project direction vector onto axis.
|
|
Vector3 | ProjectOntoPlane (const Vector3 &origin, const Vector3 &normal) const |
| Project position vector onto plane with given origin and normal.
|
|
Vector3 | ProjectOntoLine (const Vector3 &from, const Vector3 &to, bool clamped=false) const |
| Project position vector onto line segment.
|
|
float | DistanceToPoint (const Vector3 &point) const |
| Calculate distance to another position vector.
|
|
float | DistanceToPlane (const Vector3 &origin, const Vector3 &normal) const |
| Calculate distance to the plane with given origin and normal.
|
|
Vector3 | Orthogonalize (const Vector3 &axis) const |
| Make vector orthogonal to the axis.
|
|
Vector3 | CrossProduct (const Vector3 &rhs) const |
| Calculate cross product.
|
|
Vector3 | Abs () const |
| Return absolute vector.
|
|
Vector3 | Lerp (const Vector3 &rhs, float t) const |
| Linear interpolation with another vector.
|
|
bool | Equals (const Vector3 &rhs, float eps=M_EPSILON) const |
| Test for equality with another vector with epsilon.
|
|
float | Angle (const Vector3 &rhs) const |
| Returns the angle between this vector and another vector in degrees, from 0 to 180.
|
|
float | SignedAngle (const Vector3 &rhs, const Vector3 &axis) const |
|
bool | IsNaN () const |
| Return whether any component is NaN.
|
|
bool | IsInf () const |
| Return whether any component is Inf.
|
|
Vector3 | Normalized () const |
| Return normalized to unit length.
|
|
Vector3 | NormalizedOrDefault (const Vector3 &defaultValue=Vector3::ZERO, float eps=M_LARGE_EPSILON) const |
| Return normalized to unit length or zero if length is too small.
|
|
Vector3 | ReNormalized (float minLength, float maxLength, const Vector3 &defaultValue=Vector3::ZERO, float eps=M_LARGE_EPSILON) const |
| Return normalized vector with length in given range.
|
|
const float * | Data () const |
| Return float data.
|
|
ea::string | ToString () const |
| Return as string.
|
|
unsigned | ToHash () const |
| Return hash value for HashSet & HashMap.
|
|
IntVector2 | ToIntVector2 () const |
| Return IntVector2 vector (z component is ignored).
|
|
Vector2 | ToVector2 () const |
| Return Vector2 vector (z component is ignored).
|
|
IntVector3 | ToIntVector3 () const |
| Return IntVector3 vector.
|
|
Vector4 | ToVector4 (float w=0.0f) const |
| Return Vector4 vector.
|
|
Vector2 | ToXZ () const |
| Return x and z components as 2D vector (y component is ignored).
|
|
Three-dimensional vector.