Class SbVec4d

java.lang.Object
com.openinventor.inventor.SbBasic
com.openinventor.inventor.SbVec4d

public class SbVec4d extends SbBasic
4D vector class (double precision). 4D vector class used to store homogeneous coordinates. Although Open Inventor fields still store only single precision values, for certain applications it is useful and convenient to be able to store and manipulate double precision values, for example, double precision coordinate data or values that will be used for further computation.

See Also:
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    final double[]
     
  • Constructor Summary

    Constructors
    Constructor
    Description
     
    SbVec4d(double[] components)
     
    SbVec4d(double c0, double c1, double c2, double c3)
     
    SbVec4d(SbVec4d copyFrom)
     
  • Method Summary

    Modifier and Type
    Method
    Description
    void
    Component-wise vector addition operator.
    void
    divide(double d)
    Component-wise scalar division operator.
    double
    Returns dot (inner) product of vector and another vector.
    boolean
    equals(SbVec4d v, double tolerance)
    Equality comparison within given tolerance - the square of the length of the maximum distance between the two vectors.
    boolean
     
    Returns the real portion of the vector by dividing by the fourth value.
    double[]
     
    double
    getValueAt(int index)
     
    double
     
    double
     
    double
     
    double
     
    double
    Returns geometric length of vector.
    double
    Returns square length of vector.
    Component-wise binary vector subtraction operator.
    void
    multiply(double d)
    Component-wise scalar multiplication operator.
    void
    Negates each component of vector in place.
    double
    Changes vector to be unit length.
    over(double d)
    Component-wise binary scalar division operator.
    Component-wise binary vector addition operator.
    setValue(double[] components)
     
    setValue(double[] components, int startIndex)
     
    setValue(double c0, double c1, double c2, double c3)
     
    void
    setValue(SbVec4d copyFrom)
     
    Sets value of vector from a single precision vector.
    void
    setValueAt(int index, double value)
     
    void
    setW(double value)
     
    void
    setX(double value)
     
    void
    setY(double value)
     
    void
    setZ(double value)
     
    void
    Component-wise vector subtraction operator.
    times(double d)
    Component-wise binary scalar multiplication operator.
    static SbVec4d[]
    toArray(long nativeArray, long length)
     

    Methods inherited from class java.lang.Object

    getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Field Details

    • array

      public final double[] array
  • Constructor Details

    • SbVec4d

      public SbVec4d()
    • SbVec4d

      public SbVec4d(SbVec4d copyFrom)
    • SbVec4d

      public SbVec4d(double[] components)
    • SbVec4d

      public SbVec4d(double c0, double c1, double c2, double c3)
  • Method Details

    • setValue

      public SbVec4d setValue(double c0, double c1, double c2, double c3)
    • setY

      public void setY(double value)
    • setX

      public void setX(double value)
    • getValueAt

      public double getValueAt(int index)
    • setValue

      public void setValue(SbVec4d copyFrom)
    • setValueAt

      public void setValueAt(int index, double value)
    • setValue

      public SbVec4d setValue(double[] components, int startIndex)
    • getValue

      public double[] getValue()
    • setValue

      public SbVec4d setValue(double[] components)
    • setZ

      public void setZ(double value)
    • getZ

      public double getZ()
    • getX

      public double getX()
    • getY

      public double getY()
    • setW

      public void setW(double value)
    • getW

      public double getW()
    • toArray

      public static SbVec4d[] toArray(long nativeArray, long length)
    • equals

      public boolean equals(Object obj)
      Overrides:
      equals in class Object
    • equals

      public boolean equals(SbVec4d v, double tolerance)
      Equality comparison within given tolerance - the square of the length of the maximum distance between the two vectors.
    • plus

      public SbVec4d plus(SbVec4d v2)
      Component-wise binary vector addition operator.
    • minus

      public SbVec4d minus(SbVec4d v2)
      Component-wise binary vector subtraction operator.
    • over

      public SbVec4d over(double d)
      Component-wise binary scalar division operator.
    • length

      public double length()
      Returns geometric length of vector.
    • lengthSquared

      public double lengthSquared()
      Returns square length of vector. Faster than length().
    • getReal

      public SbVec3d getReal()
      Returns the real portion of the vector by dividing by the fourth value.
    • dot

      public double dot(SbVec4d v)
      Returns dot (inner) product of vector and another vector.
    • negate

      public void negate()
      Negates each component of vector in place.
    • add

      public void add(SbVec4d u)
      Component-wise vector addition operator.
    • divide

      public void divide(double d)
      Component-wise scalar division operator.
    • times

      public SbVec4d times(double d)
      Component-wise binary scalar multiplication operator.
    • substract

      public void substract(SbVec4d u)
      Component-wise vector subtraction operator.
    • multiply

      public void multiply(double d)
      Component-wise scalar multiplication operator.
    • normalize

      public double normalize()
      Changes vector to be unit length.
    • setValue

      public SbVec4d setValue(SbVec4f vec4f)
      Sets value of vector from a single precision vector.