|
|
| 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.
|
| |
|
float | ProjectOntoLineScalar (const Vector3 &from, const Vector3 &to, bool clamped=false) const |
| | Project position vector onto line segment. Returns interpolation factor between line points.
|
| |
|
Vector3 | ProjectOntoLine (const Vector3 &from, const Vector3 &to, bool clamped=false) const |
| | Project position vector onto line segment. Returns new position.
|
| |
|
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.