holoride
Search Results for

    Show / Hide Table of Contents

    Struct GlobalPosition

    A vector3 representation that supports double precision.

    Namespace: Holoride.ElasticSDK
    Assembly: Holoride.ElasticSDK.Library.Runtime.dll
    Syntax
    [Serializable]
    public struct GlobalPosition

    Constructors

    GlobalPosition(double, double, double, GlobalPosition)

    Creates a new three dimensional double vector from the specified components, shifted by the specified shift offset.

    Declaration
    public GlobalPosition(double x, double y, double z, GlobalPosition offset)
    Parameters
    Type Name Description
    double x

    The x component of the vector.

    double y

    The y component of the vector.

    double z

    The z component of the vector.

    GlobalPosition offset

    The shift offset to apply in the conversion.

    GlobalPosition(double, double, double)

    Initializes a new instance of the GlobalPosition class.

    Declaration
    public GlobalPosition(double x, double y, double z)
    Parameters
    Type Name Description
    double x

    The x-value.

    double y

    The y-value.

    double z

    The z-value.

    GlobalPosition(Vector3, GlobalPosition)

    Creates a new three dimensional double vector from the specified float vector, shifted by the specified shift offset.

    Declaration
    public GlobalPosition(Vector3 value, GlobalPosition offset)
    Parameters
    Type Name Description
    Vector3 value

    The vector to convert to a double vector.

    GlobalPosition offset

    The shift offset to apply in the conversion.

    GlobalPosition(Vector3)

    Creates a new three dimensional double vector from the specified float vector.

    Declaration
    public GlobalPosition(Vector3 value)
    Parameters
    Type Name Description
    Vector3 value

    The vector to convert to a double vector.

    Fields

    ShiftOffset

    The shift offset.

    Declaration
    public static GlobalPosition ShiftOffset
    Field Value
    Type Description
    GlobalPosition

    X

    The x-value.

    Declaration
    public double X
    Field Value
    Type Description
    double

    Y

    The y-value.

    Declaration
    public double Y
    Field Value
    Type Description
    double

    Z

    The z-value.

    Declaration
    public double Z
    Field Value
    Type Description
    double

    Zero

    The zero vector.

    Declaration
    public static readonly GlobalPosition Zero
    Field Value
    Type Description
    GlobalPosition

    Properties

    Length

    Gets the length.

    Declaration
    public double Length { get; }
    Property Value
    Type Description
    double

    SquaredLength

    Gets the squared length.

    Declaration
    public double SquaredLength { get; }
    Property Value
    Type Description
    double

    Methods

    Create(double, double, double)

    Creates a new three dimensional double vector from the specified components.

    Declaration
    public static GlobalPosition Create(double x, double y, double z)
    Parameters
    Type Name Description
    double x

    The x component of the vector.

    double y

    The y component of the vector.

    double z

    The z component of the vector.

    Returns
    Type Description
    GlobalPosition

    A new double vector.

    Create(Vector3)

    Creates a new three dimensional double vector from the specified float vector.

    Declaration
    public static GlobalPosition Create(Vector3 value)
    Parameters
    Type Name Description
    Vector3 value

    The vector to convert to a double vector.

    Returns
    Type Description
    GlobalPosition

    A new double vector.

    DeltaAsVector2XZ(GlobalPosition, GlobalPosition)

    Computes the delta vector between two vectors and returns the resulting X and Z components in float precision.

    Declaration
    public static Vector2 DeltaAsVector2XZ(GlobalPosition a, GlobalPosition b)
    Parameters
    Type Name Description
    GlobalPosition a

    The minuend.

    GlobalPosition b

    The subtrahend.

    Returns
    Type Description
    Vector2

    The difference.

    DeltaAsVector3(GlobalPosition, GlobalPosition)

    Computes the delta vector between two vectors and returns the result in float precision.

    Declaration
    public static Vector3 DeltaAsVector3(GlobalPosition a, GlobalPosition b)
    Parameters
    Type Name Description
    GlobalPosition a

    The minuend.

    GlobalPosition b

    The subtrahend.

    Returns
    Type Description
    Vector3

    The difference.

    Direction(GlobalPosition, GlobalPosition)

    Computes the direction.

    Declaration
    public static Vector3 Direction(GlobalPosition a, GlobalPosition b)
    Parameters
    Type Name Description
    GlobalPosition a

    The first vector.

    GlobalPosition b

    The second vector.

    Returns
    Type Description
    Vector3

    The direction vector with a length of 1.

    Distance(GlobalPosition, GlobalPosition)

    Computes the distance between two vectors.

    Declaration
    public static double Distance(GlobalPosition a, GlobalPosition b)
    Parameters
    Type Name Description
    GlobalPosition a

    The first position.

    GlobalPosition b

    The second position.

    Returns
    Type Description
    double

    The distance.

    Dot(GlobalPosition, GlobalPosition)

    The dot product of two Vector3Double.

    Declaration
    public static double Dot(GlobalPosition lhs, GlobalPosition rhs)
    Parameters
    Type Name Description
    GlobalPosition lhs

    Left hand side vector.

    GlobalPosition rhs

    Right hand side vector.

    Returns
    Type Description
    double

    The dot product.

    Equals(GlobalPosition)

    Indicates whether the current object is equal to another object of the same type.

    Declaration
    public bool Equals(GlobalPosition other)
    Parameters
    Type Name Description
    GlobalPosition other

    An object to compare with this object.

    Returns
    Type Description
    bool

    true if the current object is equal to the other parameter; otherwise, false.

    Equals(object)

    Determines whether the specified object is equal to the current object.

    Declaration
    public override bool Equals(object obj)
    Parameters
    Type Name Description
    object obj

    The object to compare with the current object.

    Returns
    Type Description
    bool

    true if the specified object is equal to the current object; otherwise, false.

    Overrides
    ValueType.Equals(Object)

    FromShifted(double, double, double, GlobalPosition)

    Creates a new three dimensional double vector from the specified components, from shifted space defined by the specified shift offset.

    Declaration
    public static GlobalPosition FromShifted(double x, double y, double z, GlobalPosition offset)
    Parameters
    Type Name Description
    double x

    The x component of the vector.

    double y

    The y component of the vector.

    double z

    The z component of the vector.

    GlobalPosition offset

    The shift offset to apply in the conversion.

    Returns
    Type Description
    GlobalPosition

    A new un-shifted double vector.

    FromShifted(double, double, double)

    Creates a new three dimensional double vector from the specified components, from shifted space defined by the global shift offset.

    Declaration
    public static GlobalPosition FromShifted(double x, double y, double z)
    Parameters
    Type Name Description
    double x

    The x component of the vector.

    double y

    The y component of the vector.

    double z

    The z component of the vector.

    Returns
    Type Description
    GlobalPosition

    A new un-shifted double vector.

    FromShifted(Vector3, GlobalPosition)

    Creates a new three dimensional double vector from the specified float vector, from shifted space defined by the specified shift offset.

    Declaration
    public static GlobalPosition FromShifted(Vector3 value, GlobalPosition offset)
    Parameters
    Type Name Description
    Vector3 value

    The vector to convert to a double vector.

    GlobalPosition offset

    The shift offset to apply in the conversion.

    Returns
    Type Description
    GlobalPosition

    A new un-shifted double vector.

    FromShifted(Vector3)

    Creates a new three dimensional double vector from the specified float vector, from shifted space defined by the global shift offset.

    Declaration
    public static GlobalPosition FromShifted(Vector3 value)
    Parameters
    Type Name Description
    Vector3 value

    The vector to convert to a double vector.

    Returns
    Type Description
    GlobalPosition

    A new un-shifted double vector.

    GetHashCode()

    Serves as the default hash function.

    Declaration
    public override int GetHashCode()
    Returns
    Type Description
    int

    A hash code for the current object.

    Overrides
    ValueType.GetHashCode()

    Lerp(GlobalPosition, GlobalPosition, double)

    Lerps between two Vector3Doubles.

    Declaration
    public static GlobalPosition Lerp(GlobalPosition a, GlobalPosition b, double t)
    Parameters
    Type Name Description
    GlobalPosition a

    The first vector.

    GlobalPosition b

    The second vector.

    double t

    The lerp ratio.

    Returns
    Type Description
    GlobalPosition

    The lerped Vector3Double.

    SqrDistance(GlobalPosition, GlobalPosition)

    Computes the squared distance between two vectors. Squared distances are faster to compute than distances while still providing comparability.

    Declaration
    public static double SqrDistance(GlobalPosition a, GlobalPosition b)
    Parameters
    Type Name Description
    GlobalPosition a

    The first position.

    GlobalPosition b

    The second position.

    Returns
    Type Description
    double

    The squared distance.

    ToShiftedVector2XZ()

    Converts this double precision vector to single point precision shifted space using the global shift offset.

    Declaration
    public Vector2 ToShiftedVector2XZ()
    Returns
    Type Description
    Vector2

    The shifted floating point precision vector.

    ToShiftedVector3()

    Converts this double precision vector to single point precision shifted space using the global shift offset.

    Declaration
    public Vector3 ToShiftedVector3()
    Returns
    Type Description
    Vector3

    The shifted floating point precision vector.

    ToString()

    Returns a string that represents the current object.

    Declaration
    public override string ToString()
    Returns
    Type Description
    string

    A string that represents the current object.

    Overrides
    ValueType.ToString()

    ToYMinusZX()

    Converts the vector components.

    • x -> y
    • y -> -z
    • z -> x
    Declaration
    public GlobalPosition ToYMinusZX()
    Returns
    Type Description
    GlobalPosition

    The converted vector.

    ToZXMinusY()

    Converts the vector components.

    • x -> z
    • y -> x
    • z -> -y
    Declaration
    public GlobalPosition ToZXMinusY()
    Returns
    Type Description
    GlobalPosition

    The converted vector.

    Operators

    operator +(GlobalPosition, GlobalPosition)

    Adds two Vector3Doubles.

    Declaration
    public static GlobalPosition operator +(GlobalPosition a, GlobalPosition b)
    Parameters
    Type Name Description
    GlobalPosition a

    The first vector.

    GlobalPosition b

    The second vector.

    Returns
    Type Description
    GlobalPosition

    The sum of a and b.

    operator +(GlobalPosition, Vector3)

    Adds a Vector3 to a Vector3Double.

    Declaration
    public static GlobalPosition operator +(GlobalPosition a, Vector3 b)
    Parameters
    Type Name Description
    GlobalPosition a

    The first vector as Vector3Double.

    Vector3 b

    The second vector as Vector3.

    Returns
    Type Description
    GlobalPosition

    The sum of a and b.

    operator /(GlobalPosition, double)

    Scales a vector by a divisor.

    Declaration
    public static GlobalPosition operator /(GlobalPosition v, double divisor)
    Parameters
    Type Name Description
    GlobalPosition v

    The vector to scale.

    double divisor

    The scale divisor.

    Returns
    Type Description
    GlobalPosition

    The scaled vector.

    operator ==(GlobalPosition, GlobalPosition)

    Declaration
    public static bool operator ==(GlobalPosition left, GlobalPosition right)
    Parameters
    Type Name Description
    GlobalPosition left
    GlobalPosition right
    Returns
    Type Description
    bool

    operator !=(GlobalPosition, GlobalPosition)

    Declaration
    public static bool operator !=(GlobalPosition left, GlobalPosition right)
    Parameters
    Type Name Description
    GlobalPosition left
    GlobalPosition right
    Returns
    Type Description
    bool

    operator *(GlobalPosition, GlobalPosition)

    Multiplies two Vector3Doubles.

    Declaration
    public static GlobalPosition operator *(GlobalPosition a, GlobalPosition b)
    Parameters
    Type Name Description
    GlobalPosition a

    The first vector.

    GlobalPosition b

    The second vector.

    Returns
    Type Description
    GlobalPosition

    The product of a multiplied by b.

    operator *(GlobalPosition, double)

    Scales a vector by a factor.

    Declaration
    public static GlobalPosition operator *(GlobalPosition v, double factor)
    Parameters
    Type Name Description
    GlobalPosition v

    The vector to scale.

    double factor

    The scale factor.

    Returns
    Type Description
    GlobalPosition

    The scaled vector.

    operator -(GlobalPosition, GlobalPosition)

    Subtracts two Vector3Doubles.

    Declaration
    public static GlobalPosition operator -(GlobalPosition a, GlobalPosition b)
    Parameters
    Type Name Description
    GlobalPosition a

    The first vector.

    GlobalPosition b

    The second vector.

    Returns
    Type Description
    GlobalPosition

    The subtraction of a minus b.

    In This Article

    Back to top
    ©   holoride
    Privacy   Imprint