Search Results for

    Show / Hide Table of Contents

    Struct Vector3Base

    Represents a three dimensional mathematical vector.

    Inherited Members
    Vector3Base
    Assembly: FlaxEngine.dll
    File: Engine/Core/Math/Vector3.h
    Syntax
    public struct Vector3Base<T>
    Type Parameters
    T

    Constructors

    Vector3Base()

    Empty constructor.

    Declaration
    public Vector3Base() = default

    Fields

    Backward

    Declaration
    public static FLAXENGINE_API Vector3Base<T> Backward
    Field Value
    FLAXENGINE_API Vector3Base<T>

    Down

    Declaration
    public static FLAXENGINE_API Vector3Base<T> Down
    Field Value
    FLAXENGINE_API Vector3Base<T>

    Forward

    Declaration
    public static FLAXENGINE_API Vector3Base<T> Forward
    Field Value
    FLAXENGINE_API Vector3Base<T>

    Half

    Declaration
    public static FLAXENGINE_API Vector3Base<T> Half
    Field Value
    FLAXENGINE_API Vector3Base<T>

    Left

    Declaration
    public static FLAXENGINE_API Vector3Base<T> Left
    Field Value
    FLAXENGINE_API Vector3Base<T>

    Maximum

    Declaration
    public static FLAXENGINE_API Vector3Base<T> Maximum
    Field Value
    FLAXENGINE_API Vector3Base<T>

    Minimum

    Declaration
    public static FLAXENGINE_API Vector3Base<T> Minimum
    Field Value
    FLAXENGINE_API Vector3Base<T>

    One

    Declaration
    public static FLAXENGINE_API Vector3Base<T> One
    Field Value
    FLAXENGINE_API Vector3Base<T>

    Raw

    The raw vector values (in XYZ order).

    Declaration
    public T Raw[3]
    Field Value
    T

    Right

    Declaration
    public static FLAXENGINE_API Vector3Base<T> Right
    Field Value
    FLAXENGINE_API Vector3Base<T>

    TypeInitializer

    Declaration
    public static FLAXENGINE_API struct ScriptingTypeInitializer TypeInitializer
    Field Value
    FLAXENGINE_API struct ScriptingTypeInitializer

    UnitX

    Declaration
    public static FLAXENGINE_API Vector3Base<T> UnitX
    Field Value
    FLAXENGINE_API Vector3Base<T>

    UnitY

    Declaration
    public static FLAXENGINE_API Vector3Base<T> UnitY
    Field Value
    FLAXENGINE_API Vector3Base<T>

    UnitZ

    Declaration
    public static FLAXENGINE_API Vector3Base<T> UnitZ
    Field Value
    FLAXENGINE_API Vector3Base<T>

    Up

    Declaration
    public static FLAXENGINE_API Vector3Base<T> Up
    Field Value
    FLAXENGINE_API Vector3Base<T>

    X

    The X component.

    Declaration
    public T X
    Field Value
    T

    Y

    The Y component.

    Declaration
    public T Y
    Field Value
    T

    Z

    The Z component.

    Declaration
    public T Z
    Field Value
    T

    Zero

    Declaration
    public static FLAXENGINE_API Vector3Base<T> Zero
    Field Value
    FLAXENGINE_API Vector3Base<T>

    Methods

    Abs(const Vector3Base& v)

    Declaration
    public static Vector3Base Abs(const Vector3Base& v)
    Parameters
    Vector3Base v

    Returns
    Vector3Base

    Add(const Vector3Base& a, const Vector3Base& b, Vector3Base& result)

    Declaration
    public static void Add(const Vector3Base& a, const Vector3Base& b, Vector3Base& result)
    Parameters
    Vector3Base a

    Vector3Base b

    Vector3Base result

    Angle(const Vector3Base& from, const Vector3Base& to)

    Calculates the angle (in degrees) between from and to vectors. This is always the smallest value.

    Declaration
    public static FLAXENGINE_API T Angle(const Vector3Base& from, const Vector3Base& to)
    Parameters
    Vector3Base from

    The first vector.

    Vector3Base to

    The second vector.

    Returns
    FLAXENGINE_API T

    The angle (in degrees).

    AverageArithmetic()

    Returns the average arithmetic of all the components.

    Declaration
    public T AverageArithmetic() const
    Returns
    T

    Ceil(const Vector3Base& v)

    Declaration
    public static Vector3Base Ceil(const Vector3Base& v)
    Parameters
    Vector3Base v

    Returns
    Vector3Base

    Clamp(const Vector3Base& v, const Vector3Base& min, const Vector3Base& max)

    Declaration
    public static Vector3Base Clamp(const Vector3Base& v, const Vector3Base& min, const Vector3Base& max)
    Parameters
    Vector3Base v

    Vector3Base min

    Vector3Base max

    Returns
    Vector3Base

    Clamp(const Vector3Base& v, const Vector3Base& min, const Vector3Base& max, Vector3Base& result)

    Declaration
    public static void Clamp(const Vector3Base& v, const Vector3Base& min, const Vector3Base& max, Vector3Base& result)
    Parameters
    Vector3Base v

    Vector3Base min

    Vector3Base max

    Vector3Base result

    ClampLength(const Vector3Base& v, float max)

    Makes sure that Length of the output vector is always below max and above 0.

    Declaration
    public static Vector3Base ClampLength(const Vector3Base& v, float max)
    Parameters
    Vector3Base v

    Input Vector.

    float max

    Max Length

    Returns
    Vector3Base

    ClampLength(const Vector3Base& v, float min, float max)

    Makes sure that Length of the output vector is always below max and above min.

    Declaration
    public static Vector3Base ClampLength(const Vector3Base& v, float min, float max)
    Parameters
    Vector3Base v

    Input Vector.

    float min

    Min Length

    float max

    Max Length

    Returns
    Vector3Base

    ClampLength(const Vector3Base& v, float min, float max, Vector3Base& result)

    Makes sure that Length of the output vector is always below max and above min.

    Declaration
    public static void ClampLength(const Vector3Base& v, float min, float max, Vector3Base& result)
    Parameters
    Vector3Base v

    Input Vector.

    float min

    Min Length

    float max

    Max Length

    Vector3Base result

    The result vector.

    CreateOrthonormalBasis(Vector3Base& xAxis, Vector3Base& yAxis, Vector3Base& zAxis)

    Creates an orthonormal basis from a basis with at least two orthogonal vectors.

    Declaration
    public static FLAXENGINE_API void CreateOrthonormalBasis(Vector3Base& xAxis, Vector3Base& yAxis, Vector3Base& zAxis)
    Parameters
    Vector3Base xAxis

    The X axis.

    Vector3Base yAxis

    The y axis.

    Vector3Base zAxis

    The z axis.

    Returns
    FLAXENGINE_API void

    Cross(const Vector3Base& a, const Vector3Base& b)

    Declaration
    public static Vector3Base Cross(const Vector3Base& a, const Vector3Base& b)
    Parameters
    Vector3Base a

    Vector3Base b

    Returns
    Vector3Base

    Cross(const Vector3Base& a, const Vector3Base& b, Vector3Base& result)

    Declaration
    public static void Cross(const Vector3Base& a, const Vector3Base& b, Vector3Base& result)
    Parameters
    Vector3Base a

    Vector3Base b

    Vector3Base result

    Distance(const Vector3Base& a, const Vector3Base& b)

    Declaration
    public static T Distance(const Vector3Base& a, const Vector3Base& b)
    Parameters
    Vector3Base a

    Vector3Base b

    Returns
    T

    DistanceSquared(const Vector3Base& a, const Vector3Base& b)

    Declaration
    public static T DistanceSquared(const Vector3Base& a, const Vector3Base& b)
    Parameters
    Vector3Base a

    Vector3Base b

    Returns
    T

    Divide(const Vector3Base& a, const Vector3Base& b, Vector3Base& result)

    Declaration
    public static void Divide(const Vector3Base& a, const Vector3Base& b, Vector3Base& result)
    Parameters
    Vector3Base a

    Vector3Base b

    Vector3Base result

    Dot(const Vector3Base& a, const Vector3Base& b)

    Declaration
    public static T Dot(const Vector3Base& a, const Vector3Base& b)
    Parameters
    Vector3Base a

    Vector3Base b

    Returns
    T

    FindBestAxisVectors(Vector3Base& firstAxis, Vector3Base& secondAxis)

    Finds the best arbitrary axis vectors to represent U and V axes of a plane, by using this vector as the normal of the plane.

    Declaration
    public FLAXENGINE_API void FindBestAxisVectors(Vector3Base& firstAxis, Vector3Base& secondAxis) const
    Parameters
    Vector3Base firstAxis

    The reference to first axis.

    Vector3Base secondAxis

    The reference to second axis.

    Returns
    FLAXENGINE_API void

    Floor(const Vector3Base& v)

    Declaration
    public static Vector3Base Floor(const Vector3Base& v)
    Parameters
    Vector3Base v

    Returns
    Vector3Base

    Frac(const Vector3Base& v)

    Declaration
    public static Vector3Base Frac(const Vector3Base& v)
    Parameters
    Vector3Base v

    Returns
    Vector3Base

    GetAbsolute()

    Calculates a vector with values being absolute values of that vector.

    Declaration
    public Vector3Base GetAbsolute() const
    Returns
    Vector3Base

    GetNegative()

    Calculates a vector with values being opposite to values of that vector.

    Declaration
    public Vector3Base GetNegative() const
    Returns
    Vector3Base

    GetNormalized()

    Calculates a normalized vector that has length equal to 1.

    Declaration
    public Vector3Base GetNormalized() const
    Returns
    Vector3Base

    Hermite(const Vector3Base& value1, const Vector3Base& tangent1, const Vector3Base& value2, const Vector3Base& tangent2, T amount, Vector3Base& result)

    Declaration
    public static FLAXENGINE_API void Hermite(const Vector3Base& value1, const Vector3Base& tangent1, const Vector3Base& value2, const Vector3Base& tangent2, T amount, Vector3Base& result)
    Parameters
    Vector3Base value1

    Vector3Base tangent1

    Vector3Base value2

    Vector3Base tangent2

    T amount

    Vector3Base result

    Returns
    FLAXENGINE_API void

    InvLength()

    Declaration
    public T InvLength() const
    Returns
    T

    IsAnyZero()

    Declaration
    public bool IsAnyZero() const
    Returns
    bool

    IsInfinity()

    Returns true if vector has one or more components equal to +/- infinity.

    Declaration
    public bool IsInfinity() const
    Returns
    bool

    IsNaN()

    Returns true if vector has one or more components is not a number (NaN).

    Declaration
    public bool IsNaN() const
    Returns
    bool

    IsNanOrInfinity()

    Returns true if vector has one or more components equal to +/- infinity or NaN.

    Declaration
    public bool IsNanOrInfinity() const
    Returns
    bool

    IsNormalized()

    Declaration
    public bool IsNormalized() const
    Returns
    bool

    IsOne()

    Declaration
    public bool IsOne() const
    Returns
    bool

    IsZero()

    Declaration
    public bool IsZero() const
    Returns
    bool

    Length()

    Declaration
    public T Length() const
    Returns
    T

    LengthSquared()

    Declaration
    public T LengthSquared() const
    Returns
    T

    Lerp(const Vector3Base& start, const Vector3Base& end, T amount)

    Declaration
    public static Vector3Base Lerp(const Vector3Base& start, const Vector3Base& end, T amount)
    Parameters
    Vector3Base start

    Vector3Base end

    T amount

    Returns
    Vector3Base

    Lerp(const Vector3Base& start, const Vector3Base& end, T amount, Vector3Base& result)

    Declaration
    public static void Lerp(const Vector3Base& start, const Vector3Base& end, T amount, Vector3Base& result)
    Parameters
    Vector3Base start

    Vector3Base end

    T amount

    Vector3Base result

    Max(const Vector3Base& a, const Vector3Base& b)

    Declaration
    public static Vector3Base Max(const Vector3Base& a, const Vector3Base& b)
    Parameters
    Vector3Base a

    Vector3Base b

    Returns
    Vector3Base

    Max(const Vector3Base& a, const Vector3Base& b, Vector3Base& result)

    Declaration
    public static void Max(const Vector3Base& a, const Vector3Base& b, Vector3Base& result)
    Parameters
    Vector3Base a

    Vector3Base b

    Vector3Base result

    MaxValue()

    Returns the maximum value of all the components.

    Declaration
    public T MaxValue() const
    Returns
    T

    Min(const Vector3Base& a, const Vector3Base& b)

    Declaration
    public static Vector3Base Min(const Vector3Base& a, const Vector3Base& b)
    Parameters
    Vector3Base a

    Vector3Base b

    Returns
    Vector3Base

    Min(const Vector3Base& a, const Vector3Base& b, Vector3Base& result)

    Declaration
    public static void Min(const Vector3Base& a, const Vector3Base& b, Vector3Base& result)
    Parameters
    Vector3Base a

    Vector3Base b

    Vector3Base result

    MinValue()

    Returns the minimum value of all the components.

    Declaration
    public T MinValue() const
    Returns
    T

    Mod(const Vector3Base& a, const Vector3Base& b)

    Declaration
    public static Vector3Base Mod(const Vector3Base& a, const Vector3Base& b)
    Parameters
    Vector3Base a

    Vector3Base b

    Returns
    Vector3Base

    MoveTowards(Vector3 current, Vector3 target, float maxDistanceDelta)

    Moves a value current towards target.

    Declaration
    public static Vector3 MoveTowards(Vector3 current, Vector3 target, float maxDistanceDelta)
    Parameters
    Vector3 current

    The position to move from.

    Vector3 target

    The position to move towards.

    float maxDistanceDelta

    The maximum distance that can be applied to the value.

    Returns
    Vector3

    The new position.

    Multiply(const Vector3Base& a, const Vector3Base& b, Vector3Base& result)

    Declaration
    public static void Multiply(const Vector3Base& a, const Vector3Base& b, Vector3Base& result)
    Parameters
    Vector3Base a

    Vector3Base b

    Vector3Base result

    NearEqual(const Vector3Base& a, const Vector3Base& b)

    Declaration
    public static bool NearEqual(const Vector3Base& a, const Vector3Base& b)
    Parameters
    Vector3Base a

    Vector3Base b

    Returns
    bool

    NearEqual(const Vector3Base& a, const Vector3Base& b, T epsilon)

    Declaration
    public static bool NearEqual(const Vector3Base& a, const Vector3Base& b, T epsilon)
    Parameters
    Vector3Base a

    Vector3Base b

    T epsilon

    Returns
    bool

    Normalize()

    Performs vector normalization (scales vector up to unit length).

    Declaration
    public void Normalize()

    Normalize(const Vector3Base& input, Vector3Base& result)

    Declaration
    public static void Normalize(const Vector3Base& input, Vector3Base& result)
    Parameters
    Vector3Base input

    Vector3Base result

    Returns
    void

    Normalize(const Vector3Base& v)

    Declaration
    public static Vector3Base Normalize(const Vector3Base& v)
    Parameters
    Vector3Base v

    Returns
    Vector3Base

    NormalizeFast()

    Performs fast vector normalization (scales vector up to unit length).

    Declaration
    public void NormalizeFast()

    NormalizeFast(const Vector3Base& v)

    Declaration
    public static Vector3Base NormalizeFast(const Vector3Base& v)
    Parameters
    Vector3Base v

    Returns
    Vector3Base

    operator!=(const Vector3Base& b)

    Declaration
    public bool operator!=(const Vector3Base& b) const
    Parameters
    Vector3Base b

    Returns
    bool

    operator-()

    Declaration
    public Vector3Base operator-() const
    Returns
    Vector3Base

    operator-(const Vector3Base& b)

    Declaration
    public Vector3Base operator-(const Vector3Base& b) const
    Parameters
    Vector3Base b

    Returns
    Vector3Base

    operator-(T b)

    Declaration
    public Vector3Base operator-(T b) const
    Parameters
    T b

    Returns
    Vector3Base

    operator-(typename TOtherFloat<T>::Type a)

    Declaration
    public Vector3Base operator-(typename TOtherFloat<T>::Type a) const
    Parameters
    typename TOtherFloat<T>::Type a

    Returns
    Vector3Base

    operator*(const Vector3Base& b)

    Declaration
    public Vector3Base operator*(const Vector3Base& b) const
    Parameters
    Vector3Base b

    Returns
    Vector3Base

    operator*(T b)

    Declaration
    public Vector3Base operator*(T b) const
    Parameters
    T b

    Returns
    Vector3Base

    operator*(typename TOtherFloat<T>::Type a)

    Declaration
    public Vector3Base operator*(typename TOtherFloat<T>::Type a) const
    Parameters
    typename TOtherFloat<T>::Type a

    Returns
    Vector3Base

    operator*=(const Vector3Base& b)

    Declaration
    public Vector3Base operator*=(const Vector3Base& b)
    Parameters
    Vector3Base b

    Returns
    Vector3Base

    operator*=(T b)

    Declaration
    public Vector3Base operator*=(T b)
    Parameters
    T b

    Returns
    Vector3Base

    operator/(const Vector3Base& b)

    Declaration
    public Vector3Base operator/(const Vector3Base& b) const
    Parameters
    Vector3Base b

    Returns
    Vector3Base

    operator/(T b)

    Declaration
    public Vector3Base operator/(T b) const
    Parameters
    T b

    Returns
    Vector3Base

    operator/(typename TOtherFloat<T>::Type a)

    Declaration
    public Vector3Base operator/(typename TOtherFloat<T>::Type a) const
    Parameters
    typename TOtherFloat<T>::Type a

    Returns
    Vector3Base

    operator/=(const Vector3Base& b)

    Declaration
    public Vector3Base operator/=(const Vector3Base& b)
    Parameters
    Vector3Base b

    Returns
    Vector3Base

    operator/=(T b)

    Declaration
    public Vector3Base operator/=(T b)
    Parameters
    T b

    Returns
    Vector3Base

    operator^(const Vector3Base& b)

    Declaration
    public Vector3Base operator^(const Vector3Base& b) const
    Parameters
    Vector3Base b

    Returns
    Vector3Base

    operator|(const Vector3Base& b)

    Declaration
    public T operator|(const Vector3Base& b) const
    Parameters
    Vector3Base b

    Returns
    T

    operator+(const Vector3Base& b)

    Declaration
    public Vector3Base operator+(const Vector3Base& b) const
    Parameters
    Vector3Base b

    Returns
    Vector3Base

    operator+(T b)

    Declaration
    public Vector3Base operator+(T b) const
    Parameters
    T b

    Returns
    Vector3Base

    operator+(typename TOtherFloat<T>::Type a)

    Declaration
    public Vector3Base operator+(typename TOtherFloat<T>::Type a) const
    Parameters
    typename TOtherFloat<T>::Type a

    Returns
    Vector3Base

    operator+=(const Vector3Base& b)

    Declaration
    public Vector3Base operator+=(const Vector3Base& b)
    Parameters
    Vector3Base b

    Returns
    Vector3Base

    operator+=(T b)

    Declaration
    public Vector3Base operator+=(T b)
    Parameters
    T b

    Returns
    Vector3Base

    operator<(const Vector3Base& b)

    Declaration
    public bool operator<(const Vector3Base& b) const
    Parameters
    Vector3Base b

    Returns
    bool

    operator<=(const Vector3Base& b)

    Declaration
    public bool operator<=(const Vector3Base& b) const
    Parameters
    Vector3Base b

    Returns
    bool

    operator-=(const Vector3Base& b)

    Declaration
    public Vector3Base operator-=(const Vector3Base& b)
    Parameters
    Vector3Base b

    Returns
    Vector3Base

    operator-=(T b)

    Declaration
    public Vector3Base operator-=(T b)
    Parameters
    T b

    Returns
    Vector3Base

    operator==(const Vector3Base& b)

    Declaration
    public bool operator==(const Vector3Base& b) const
    Parameters
    Vector3Base b

    Returns
    bool

    operator>(const Vector3Base& b)

    Declaration
    public bool operator>(const Vector3Base& b) const
    Parameters
    Vector3Base b

    Returns
    bool

    operator>=(const Vector3Base& b)

    Declaration
    public bool operator>=(const Vector3Base& b) const
    Parameters
    Vector3Base b

    Returns
    bool

    Project(const Vector3Base& vector, const Vector3Base& onNormal)

    Projects a vector onto another vector.

    Declaration
    public static FLAXENGINE_API Vector3Base Project(const Vector3Base& vector, const Vector3Base& onNormal)
    Parameters
    Vector3Base vector

    The vector to project.

    Vector3Base onNormal

    The projection normal vector.

    Returns
    FLAXENGINE_API Vector3Base

    The projected vector.

    Project(const Vector3Base& vector, float x, float y, float width, float height, float minZ, float maxZ, const Matrix& worldViewProjection)

    Declaration
    public static Vector3Base Project(const Vector3Base& vector, float x, float y, float width, float height, float minZ, float maxZ, const Matrix& worldViewProjection)
    Parameters
    Vector3Base vector

    float x

    float y

    float width

    float height

    float minZ

    float maxZ

    Matrix worldViewProjection

    Returns
    Vector3Base

    Project(const Vector3Base& vector, float x, float y, float width, float height, float minZ, float maxZ, const Matrix& worldViewProjection, Vector3Base& result)

    Declaration
    public static FLAXENGINE_API void Project(const Vector3Base& vector, float x, float y, float width, float height, float minZ, float maxZ, const Matrix& worldViewProjection, Vector3Base& result)
    Parameters
    Vector3Base vector

    float x

    float y

    float width

    float height

    float minZ

    float maxZ

    Matrix worldViewProjection

    Vector3Base result

    Returns
    FLAXENGINE_API void

    ProjectOnPlane(const Vector3Base& vector, const Vector3Base& planeNormal)

    Projects a vector onto a plane defined by a normal orthogonal to the plane.

    Declaration
    public static Vector3Base ProjectOnPlane(const Vector3Base& vector, const Vector3Base& planeNormal)
    Parameters
    Vector3Base vector

    The vector to project.

    Vector3Base planeNormal

    The plane normal vector.

    Returns
    Vector3Base

    The projected vector.

    Reflect(const Vector3Base& vector, const Vector3Base& normal, Vector3Base& result)

    Declaration
    public static FLAXENGINE_API void Reflect(const Vector3Base& vector, const Vector3Base& normal, Vector3Base& result)
    Parameters
    Vector3Base vector

    Vector3Base normal

    Vector3Base result

    Returns
    FLAXENGINE_API void

    Round(const Vector3Base& v)

    Declaration
    public static Vector3Base Round(const Vector3Base& v)
    Parameters
    Vector3Base v

    Returns
    Vector3Base

    SignedAngle(const Vector3Base& from, const Vector3Base& to, const Vector3Base& axis)

    Calculates the signed angle (in degrees) between from and to vectors. This is always the smallest value. The sign of the result depends on: the order of input vectors, and the direction of the axis vector.

    Declaration
    public static FLAXENGINE_API T SignedAngle(const Vector3Base& from, const Vector3Base& to, const Vector3Base& axis)
    Parameters
    Vector3Base from

    The first vector.

    Vector3Base to

    The second vector.

    Vector3Base axis

    The axis around which the vectors are rotated.

    Returns
    FLAXENGINE_API T

    The angle (in degrees).

    SmoothStep(const Vector3Base& start, const Vector3Base& end, T amount, Vector3Base& result)

    Declaration
    public static void SmoothStep(const Vector3Base& start, const Vector3Base& end, T amount, Vector3Base& result)
    Parameters
    Vector3Base start

    Vector3Base end

    T amount

    Vector3Base result

    SnapToGrid(const Vector3Base& point, const Vector3Base& gridSize, const Quaternion& gridOrientation, const Vector3Base& gridOrigin=Zero, const Vector3Base& offset=Zero)

    Snaps the point onto the rotated grid. For world aligned grid snapping use SnapToGrid(const Vector3Base& pos, const Vector3Base& gridSize) instead.

    Declaration
    public static FLAXENGINE_API Vector3Base SnapToGrid(const Vector3Base& point, const Vector3Base& gridSize, const Quaternion& gridOrientation, const Vector3Base& gridOrigin=Zero, const Vector3Base& offset=Zero)
    Parameters
    Vector3Base point

    The position to snap.

    Vector3Base gridSize

    The size of the grid.

    Quaternion gridOrientation

    The rotation of the grid.

    Vector3Base gridOrigin

    The center point of the grid.

    Vector3Base offset

    The local position offset applied to the snapped position before grid rotation.

    Returns
    FLAXENGINE_API Vector3Base

    The position snapped to the grid.

    SnapToGrid(const Vector3Base& pos, const Vector3Base& gridSize)

    Snaps the input position onto the grid.

    Declaration
    public static FLAXENGINE_API Vector3Base SnapToGrid(const Vector3Base& pos, const Vector3Base& gridSize)
    Parameters
    Vector3Base pos

    The position to snap.

    Vector3Base gridSize

    The size of the grid.

    Returns
    FLAXENGINE_API Vector3Base

    The position snapped to the grid.

    Subtract(const Vector3Base& a, const Vector3Base& b, Vector3Base& result)

    Declaration
    public static void Subtract(const Vector3Base& a, const Vector3Base& b, Vector3Base& result)
    Parameters
    Vector3Base a

    Vector3Base b

    Vector3Base result

    SumValues()

    Gets the sum of all vector components values.

    Declaration
    public T SumValues() const
    Returns
    T

    ToString()

    Declaration
    public FLAXENGINE_API String ToString() const
    Returns
    FLAXENGINE_API String

    Transform(const Vector3Base& vector, const ::Transform& transform)

    Declaration
    public static FLAXENGINE_API Vector3Base Transform(const Vector3Base& vector, const ::Transform& transform)
    Parameters
    Vector3Base vector

    ::Transform transform

    Returns
    FLAXENGINE_API Vector3Base

    Transform(const Vector3Base& vector, const ::Transform& transform, Vector3Base& result)

    Declaration
    public static FLAXENGINE_API void Transform(const Vector3Base& vector, const ::Transform& transform, Vector3Base& result)
    Parameters
    Vector3Base vector

    ::Transform transform

    Vector3Base result

    Returns
    FLAXENGINE_API void

    Transform(const Vector3Base& vector, const Matrix& transform)

    Declaration
    public static FLAXENGINE_API Vector3Base Transform(const Vector3Base& vector, const Matrix& transform)
    Parameters
    Vector3Base vector

    Matrix transform

    Returns
    FLAXENGINE_API Vector3Base

    Transform(const Vector3Base& vector, const Matrix& transform, Vector3Base& result)

    Declaration
    public static FLAXENGINE_API void Transform(const Vector3Base& vector, const Matrix& transform, Vector3Base& result)
    Parameters
    Vector3Base vector

    Matrix transform

    Vector3Base result

    Returns
    FLAXENGINE_API void

    Transform(const Vector3Base& vector, const Matrix& transform, Vector4Base<T>& result)

    Declaration
    public static FLAXENGINE_API void Transform(const Vector3Base& vector, const Matrix& transform, Vector4Base<T>& result)
    Parameters
    Vector3Base vector

    Matrix transform

    Vector4Base<T> result

    Returns
    FLAXENGINE_API void

    Transform(const Vector3Base& vector, const Matrix3x3& transform, Vector3Base& result)

    Declaration
    public static FLAXENGINE_API void Transform(const Vector3Base& vector, const Matrix3x3& transform, Vector3Base& result)
    Parameters
    Vector3Base vector

    Matrix3x3 transform

    Vector3Base result

    Returns
    FLAXENGINE_API void

    Transform(const Vector3Base& vector, const Quaternion& rotation)

    Declaration
    public static FLAXENGINE_API Vector3Base Transform(const Vector3Base& vector, const Quaternion& rotation)
    Parameters
    Vector3Base vector

    Quaternion rotation

    Returns
    FLAXENGINE_API Vector3Base

    Transform(const Vector3Base& vector, const Quaternion& rotation, Vector3Base& result)

    Declaration
    public static FLAXENGINE_API void Transform(const Vector3Base& vector, const Quaternion& rotation, Vector3Base& result)
    Parameters
    Vector3Base vector

    Quaternion rotation

    Vector3Base result

    Returns
    FLAXENGINE_API void

    TransformCoordinate(const Vector3Base& coordinate, const Matrix& transform, Vector3Base& result)

    Declaration
    public static FLAXENGINE_API void TransformCoordinate(const Vector3Base& coordinate, const Matrix& transform, Vector3Base& result)
    Parameters
    Vector3Base coordinate

    Matrix transform

    Vector3Base result

    Returns
    FLAXENGINE_API void

    TransformNormal(const Vector3Base& normal, const Matrix& transform, Vector3Base& result)

    Declaration
    public static FLAXENGINE_API void TransformNormal(const Vector3Base& normal, const Matrix& transform, Vector3Base& result)
    Parameters
    Vector3Base normal

    Matrix transform

    Vector3Base result

    Returns
    FLAXENGINE_API void

    TriangleArea(const Vector3Base& v0, const Vector3Base& v1, const Vector3Base& v2)

    Calculates the area of the triangle.

    Declaration
    public static FLAXENGINE_API T TriangleArea(const Vector3Base& v0, const Vector3Base& v1, const Vector3Base& v2)
    Parameters
    Vector3Base v0

    The first triangle vertex.

    Vector3Base v1

    The second triangle vertex.

    Vector3Base v2

    The third triangle vertex.

    Returns
    FLAXENGINE_API T

    The triangle area.

    Unproject(const Vector3Base& vector, float x, float y, float width, float height, float minZ, float maxZ, const Matrix& worldViewProjection)

    Declaration
    public static Vector3Base Unproject(const Vector3Base& vector, float x, float y, float width, float height, float minZ, float maxZ, const Matrix& worldViewProjection)
    Parameters
    Vector3Base vector

    float x

    float y

    float width

    float height

    float minZ

    float maxZ

    Matrix worldViewProjection

    Returns
    Vector3Base

    Unproject(const Vector3Base& vector, float x, float y, float width, float height, float minZ, float maxZ, const Matrix& worldViewProjection, Vector3Base& result)

    Declaration
    public static FLAXENGINE_API void Unproject(const Vector3Base& vector, float x, float y, float width, float height, float minZ, float maxZ, const Matrix& worldViewProjection, Vector3Base& result)
    Parameters
    Vector3Base vector

    float x

    float y

    float width

    float height

    float minZ

    float maxZ

    Matrix worldViewProjection

    Vector3Base result

    Returns
    FLAXENGINE_API void

    Vector3Base(const Color& color)

    Declaration
    public FLAXENGINE_API Vector3Base(const Color& color)
    Parameters
    Color color

    Returns
    FLAXENGINE_API

    Vector3Base(const Double2& xy, T z = 0)

    Declaration
    public FLAXENGINE_API Vector3Base(const Double2& xy, T z = 0)
    Parameters
    Double2 xy

    T z

    Returns
    FLAXENGINE_API

    Vector3Base(const Double4& xyz)

    Declaration
    public FLAXENGINE_API Vector3Base(const Double4& xyz)
    Parameters
    Double4 xyz

    Returns
    FLAXENGINE_API

    Vector3Base(const Float2& xy, T z = 0)

    Declaration
    public FLAXENGINE_API Vector3Base(const Float2& xy, T z = 0)
    Parameters
    Float2 xy

    T z

    Returns
    FLAXENGINE_API

    Vector3Base(const Float4& xyz)

    Declaration
    public FLAXENGINE_API Vector3Base(const Float4& xyz)
    Parameters
    Float4 xyz

    Returns
    FLAXENGINE_API

    Vector3Base(const Int2& xy, T z = 0)

    Declaration
    public FLAXENGINE_API Vector3Base(const Int2& xy, T z = 0)
    Parameters
    Int2 xy

    T z

    Returns
    FLAXENGINE_API

    Vector3Base(const Int3& xyz)

    Declaration
    public FLAXENGINE_API Vector3Base(const Int3& xyz)
    Parameters
    Int3 xyz

    Returns
    FLAXENGINE_API

    Vector3Base(const Int4& xyz)

    Declaration
    public FLAXENGINE_API Vector3Base(const Int4& xyz)
    Parameters
    Int4 xyz

    Returns
    FLAXENGINE_API

    Vector3Base(const T* xyz)

    Declaration
    public Vector3Base(const T* xyz)
    Parameters
    T xyz

    Returns
    FORCE_INLINE

    Vector3Base(const Vector3Base<U>& xyz)

    Declaration
    public Vector3Base(const Vector3Base<U>& xyz)
    Parameters
    Vector3Base<U> xyz

    Returns
    FORCE_INLINE

    Type Parameters
    typename U

    typename TEnableIf<><>>::Value>::Type...

    Vector3Base(T x, T y, T z)

    Declaration
    public Vector3Base(T x, T y, T z)
    Parameters
    T x

    T y

    T z

    Returns
    FORCE_INLINE

    Vector3Base(T xyz)

    Declaration
    public Vector3Base(T xyz)
    Parameters
    T xyz

    Returns
    FORCE_INLINE

    • Improve this Doc
    • View Source
    In This Article
    Back to top Copyright © 2012-2024 Wojciech Figat