Package javax.vecmath

Class Tuple3f

java.lang.Object
javax.vecmath.Tuple3f
All Implemented Interfaces:
Serializable, Cloneable
Direct Known Subclasses:
Color3f, Point3f, TexCoord3f, Vector3f

public abstract class Tuple3f extends Object implements Serializable, Cloneable
A generic 3-element tuple that is represented by single precision-floating point x,y,z coordinates.
See Also:
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    float
    The x coordinate.
    float
    The y coordinate.
    float
    The z coordinate.
  • Constructor Summary

    Constructors
    Constructor
    Description
    Constructs and initializes a Tuple3f to (0,0,0).
    Tuple3f(float[] t)
    Constructs and initializes a Tuple3f from the array of length 3.
    Tuple3f(float x, float y, float z)
    Constructs and initializes a Tuple3f from the specified xyz coordinates.
    Constructs and initializes a Tuple3f from the specified Tuple3d.
    Constructs and initializes a Tuple3f from the specified Tuple3f.
  • Method Summary

    Modifier and Type
    Method
    Description
    final void
    Sets each component of this tuple to its absolute value.
    final void
    Sets each component of the tuple parameter to its absolute value and places the modified values into this tuple.
    final void
    Sets the value of this tuple to the vector sum of itself and tuple t1.
    final void
    add(Tuple3f t1, Tuple3f t2)
    Sets the value of this tuple to the vector sum of tuples t1 and t2.
    final void
    clamp(float min, float max)
    Clamps this tuple to the range [low, high].
    final void
    clamp(float min, float max, Tuple3f t)
    Clamps the tuple parameter to the range [low, high] and places the values into this tuple.
    final void
    clampMax(float max)
    Clamps the maximum value of this tuple to the max parameter.
    final void
    clampMax(float max, Tuple3f t)
    Clamps the maximum value of the tuple parameter to the max parameter and places the values into this tuple.
    final void
    clampMin(float min)
    Clamps the minimum value of this tuple to the min parameter.
    final void
    clampMin(float min, Tuple3f t)
    Clamps the minimum value of the tuple parameter to the min parameter and places the values into this tuple.
    Creates a new object of the same class as this object.
    boolean
    epsilonEquals(Tuple3f t1, float epsilon)
    Returns true if the L-infinite distance between this tuple and tuple t1 is less than or equal to the epsilon parameter, otherwise returns false.
    boolean
    Returns true if the Object t1 is of type Tuple3f and all of the data members of t1 are equal to the corresponding data members in this Tuple3f.
    boolean
    Returns true if the Object t1 is of type Tuple3f and all of the data members of t1 are equal to the corresponding data members in this Tuple3f.
    final void
    get(float[] t)
    Gets the value of this tuple and copies the values into t.
    final void
    Gets the value of this tuple and copies the values into t.
    final float
    Get the x coordinate.
    final float
    Get the y coordinate.
    final float
    Get the z coordinate.
    int
    Returns a hash code value based on the data values in this object.
    final void
    interpolate(Tuple3f t1, float alpha)
    Linearly interpolates between this tuple and tuple t1 and places the result into this tuple: this = (1-alpha)*this + alpha*t1.
    final void
    interpolate(Tuple3f t1, Tuple3f t2, float alpha)
    Linearly interpolates between tuples t1 and t2 and places the result into this tuple: this = (1-alpha)*t1 + alpha*t2.
    final void
    Negates the value of this tuple in place.
    final void
    Sets the value of this tuple to the negation of tuple t1.
    final void
    scale(float s)
    Sets the value of this tuple to the scalar multiplication of the scale factor with this.
    final void
    scale(float s, Tuple3f t1)
    Sets the value of this vector to the scalar multiplication of tuple t1.
    final void
    scaleAdd(float s, Tuple3f t1)
    Sets the value of this tuple to the scalar multiplication of itself and then adds tuple t1 (this = s*this + t1).
    final void
    scaleAdd(float s, Tuple3f t1, Tuple3f t2)
    Sets the value of this tuple to the scalar multiplication of tuple t1 and then adds tuple t2 (this = s*t1 + t2).
    final void
    set(float[] t)
    Sets the value of this tuple to the xyz coordinates specified in the array of length 3.
    final void
    set(float x, float y, float z)
    Sets the value of this tuple to the specified xyz coordinates.
    final void
    Sets the value of this tuple to the value of tuple t1.
    final void
    Sets the value of this tuple to the value of tuple t1.
    final void
    setX(float x)
    Set the x coordinate.
    final void
    setY(float y)
    Set the y coordinate.
    final void
    setZ(float z)
    Set the Z coordinate.
    final void
    Sets the value of this tuple to the vector difference of itself and tuple t1 (this = this - t1) .
    final void
    sub(Tuple3f t1, Tuple3f t2)
    Sets the value of this tuple to the vector difference of tuples t1 and t2 (this = t1 - t2).
    Returns a string that contains the values of this Tuple3f.

    Methods inherited from class java.lang.Object

    finalize, getClass, notify, notifyAll, wait, wait, wait
  • Field Details

    • x

      public float x
      The x coordinate.
    • y

      public float y
      The y coordinate.
    • z

      public float z
      The z coordinate.
  • Constructor Details

    • Tuple3f

      public Tuple3f(float x, float y, float z)
      Constructs and initializes a Tuple3f from the specified xyz coordinates.
      Parameters:
      x - the x coordinate
      y - the y coordinate
      z - the z coordinate
    • Tuple3f

      public Tuple3f(float[] t)
      Constructs and initializes a Tuple3f from the array of length 3.
      Parameters:
      t - the array of length 3 containing xyz in order
    • Tuple3f

      public Tuple3f(Tuple3f t1)
      Constructs and initializes a Tuple3f from the specified Tuple3f.
      Parameters:
      t1 - the Tuple3f containing the initialization x y z data
    • Tuple3f

      public Tuple3f(Tuple3d t1)
      Constructs and initializes a Tuple3f from the specified Tuple3d.
      Parameters:
      t1 - the Tuple3d containing the initialization x y z data
    • Tuple3f

      public Tuple3f()
      Constructs and initializes a Tuple3f to (0,0,0).
  • Method Details

    • toString

      public String toString()
      Returns a string that contains the values of this Tuple3f. The form is (x,y,z).
      Overrides:
      toString in class Object
      Returns:
      the String representation
    • set

      public final void set(float x, float y, float z)
      Sets the value of this tuple to the specified xyz coordinates.
      Parameters:
      x - the x coordinate
      y - the y coordinate
      z - the z coordinate
    • set

      public final void set(float[] t)
      Sets the value of this tuple to the xyz coordinates specified in the array of length 3.
      Parameters:
      t - the array of length 3 containing xyz in order
    • set

      public final void set(Tuple3f t1)
      Sets the value of this tuple to the value of tuple t1.
      Parameters:
      t1 - the tuple to be copied
    • set

      public final void set(Tuple3d t1)
      Sets the value of this tuple to the value of tuple t1.
      Parameters:
      t1 - the tuple to be copied
    • get

      public final void get(float[] t)
      Gets the value of this tuple and copies the values into t.
      Parameters:
      t - the array of length 3 into which the values are copied
    • get

      public final void get(Tuple3f t)
      Gets the value of this tuple and copies the values into t.
      Parameters:
      t - the Tuple3f object into which the values of this object are copied
    • add

      public final void add(Tuple3f t1, Tuple3f t2)
      Sets the value of this tuple to the vector sum of tuples t1 and t2.
      Parameters:
      t1 - the first tuple
      t2 - the second tuple
    • add

      public final void add(Tuple3f t1)
      Sets the value of this tuple to the vector sum of itself and tuple t1.
      Parameters:
      t1 - the other tuple
    • sub

      public final void sub(Tuple3f t1, Tuple3f t2)
      Sets the value of this tuple to the vector difference of tuples t1 and t2 (this = t1 - t2).
      Parameters:
      t1 - the first tuple
      t2 - the second tuple
    • sub

      public final void sub(Tuple3f t1)
      Sets the value of this tuple to the vector difference of itself and tuple t1 (this = this - t1) .
      Parameters:
      t1 - the other tuple
    • negate

      public final void negate(Tuple3f t1)
      Sets the value of this tuple to the negation of tuple t1.
      Parameters:
      t1 - the source tuple
    • negate

      public final void negate()
      Negates the value of this tuple in place.
    • scale

      public final void scale(float s, Tuple3f t1)
      Sets the value of this vector to the scalar multiplication of tuple t1.
      Parameters:
      s - the scalar value
      t1 - the source tuple
    • scale

      public final void scale(float s)
      Sets the value of this tuple to the scalar multiplication of the scale factor with this.
      Parameters:
      s - the scalar value
    • scaleAdd

      public final void scaleAdd(float s, Tuple3f t1, Tuple3f t2)
      Sets the value of this tuple to the scalar multiplication of tuple t1 and then adds tuple t2 (this = s*t1 + t2).
      Parameters:
      s - the scalar value
      t1 - the tuple to be scaled and added
      t2 - the tuple to be added without a scale
    • scaleAdd

      public final void scaleAdd(float s, Tuple3f t1)
      Sets the value of this tuple to the scalar multiplication of itself and then adds tuple t1 (this = s*this + t1).
      Parameters:
      s - the scalar value
      t1 - the tuple to be added
    • equals

      public boolean equals(Tuple3f t1)
      Returns true if the Object t1 is of type Tuple3f and all of the data members of t1 are equal to the corresponding data members in this Tuple3f.
      Parameters:
      t1 - the vector with which the comparison is made
      Returns:
      true or false
    • equals

      public boolean equals(Object t1)
      Returns true if the Object t1 is of type Tuple3f and all of the data members of t1 are equal to the corresponding data members in this Tuple3f.
      Overrides:
      equals in class Object
      Parameters:
      t1 - the Object with which the comparison is made
      Returns:
      true or false
    • epsilonEquals

      public boolean epsilonEquals(Tuple3f t1, float epsilon)
      Returns true if the L-infinite distance between this tuple and tuple t1 is less than or equal to the epsilon parameter, otherwise returns false. The L-infinite distance is equal to MAX[abs(x1-x2), abs(y1-y2), abs(z1-z2)].
      Parameters:
      t1 - the tuple to be compared to this tuple
      epsilon - the threshold value
      Returns:
      true or false
    • hashCode

      public int hashCode()
      Returns a hash code value based on the data values in this object. Two different Tuple3f objects with identical data values (i.e., Tuple3f.equals returns true) will return the same hash code value. Two objects with different data members may return the same hash value, although this is not likely.
      Overrides:
      hashCode in class Object
      Returns:
      the integer hash code value
    • clamp

      public final void clamp(float min, float max, Tuple3f t)
      Clamps the tuple parameter to the range [low, high] and places the values into this tuple.
      Parameters:
      min - the lowest value in the tuple after clamping
      max - the highest value in the tuple after clamping
      t - the source tuple, which will not be modified
    • clampMin

      public final void clampMin(float min, Tuple3f t)
      Clamps the minimum value of the tuple parameter to the min parameter and places the values into this tuple.
      Parameters:
      min - the lowest value in the tuple after clamping
      t - the source tuple, which will not be modified
    • clampMax

      public final void clampMax(float max, Tuple3f t)
      Clamps the maximum value of the tuple parameter to the max parameter and places the values into this tuple.
      Parameters:
      max - the highest value in the tuple after clamping
      t - the source tuple, which will not be modified
    • absolute

      public final void absolute(Tuple3f t)
      Sets each component of the tuple parameter to its absolute value and places the modified values into this tuple.
      Parameters:
      t - the source tuple, which will not be modified
    • clamp

      public final void clamp(float min, float max)
      Clamps this tuple to the range [low, high].
      Parameters:
      min - the lowest value in this tuple after clamping
      max - the highest value in this tuple after clamping
    • clampMin

      public final void clampMin(float min)
      Clamps the minimum value of this tuple to the min parameter.
      Parameters:
      min - the lowest value in this tuple after clamping
    • clampMax

      public final void clampMax(float max)
      Clamps the maximum value of this tuple to the max parameter.
      Parameters:
      max - the highest value in the tuple after clamping
    • absolute

      public final void absolute()
      Sets each component of this tuple to its absolute value.
    • interpolate

      public final void interpolate(Tuple3f t1, Tuple3f t2, float alpha)
      Linearly interpolates between tuples t1 and t2 and places the result into this tuple: this = (1-alpha)*t1 + alpha*t2.
      Parameters:
      t1 - the first tuple
      t2 - the second tuple
      alpha - the alpha interpolation parameter
    • interpolate

      public final void interpolate(Tuple3f t1, float alpha)
      Linearly interpolates between this tuple and tuple t1 and places the result into this tuple: this = (1-alpha)*this + alpha*t1.
      Parameters:
      t1 - the first tuple
      alpha - the alpha interpolation parameter
    • clone

      public Object clone()
      Creates a new object of the same class as this object.
      Overrides:
      clone in class Object
      Returns:
      a clone of this instance.
      Throws:
      OutOfMemoryError - if there is not enough memory.
      Since:
      vecmath 1.3
      See Also:
    • getX

      public final float getX()
      Get the x coordinate.
      Returns:
      the x coordinate.
      Since:
      vecmath 1.5
    • setX

      public final void setX(float x)
      Set the x coordinate.
      Parameters:
      x - value to x coordinate.
      Since:
      vecmath 1.5
    • getY

      public final float getY()
      Get the y coordinate.
      Returns:
      the y coordinate.
      Since:
      vecmath 1.5
    • setY

      public final void setY(float y)
      Set the y coordinate.
      Parameters:
      y - value to y coordinate.
      Since:
      vecmath 1.5
    • getZ

      public final float getZ()
      Get the z coordinate.
      Returns:
      the z coordinate
      Since:
      vecmath 1.5
    • setZ

      public final void setZ(float z)
      Set the Z coordinate.
      Parameters:
      z - value to z coordinate.
      Since:
      vecmath 1.5