Package javax.vecmath

Class Tuple4f

  • All Implemented Interfaces:
    java.io.Serializable
    Direct Known Subclasses:
    Color4f, Point4f, Quat4f, Vector4f

    public abstract class Tuple4f
    extends java.lang.Object
    implements java.io.Serializable
    A generic 4 element tuple that is represented by single precision floating point x,y,z and w coordinates.
    See Also:
    Serialized Form
    • Field Summary

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

      Constructors 
      Constructor Description
      Tuple4f()
      Constructs and initializes a Tuple4f to (0,0,0,0).
      Tuple4f​(float[] t)
      Constructs and initializes a Tuple4f from the specified array.
      Tuple4f​(float x, float y, float z, float w)
      Constructs and initializes a Tuple4f from the specified xyzw coordinates.
      Tuple4f​(Tuple4d t1)
      Constructs and initializes a Tuple4f from the specified Tuple4d.
      Tuple4f​(Tuple4f t1)
      Constructs and initializes a Tuple4f from the specified Tuple4f.
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      void absolute()
      Sets each component of this tuple to its absolute value.
      void absolute​(Tuple4f t)
      Sets each component of the tuple parameter to its absolute value and places the modified values into this tuple.
      void add​(Tuple4f t1)
      Sets the value of this tuple to the vector sum of itself and tuple t1.
      void add​(Tuple4f t1, Tuple4f t2)
      Sets the value of this tuple to the vector sum of tuples t1 and t2.
      void clamp​(float min, float max)
      Clamps this tuple to the range [low, high].
      void clamp​(float min, float max, Tuple4f t)
      Clamps the tuple parameter to the range [low, high] and places the values into this tuple.
      void clampMax​(float max)
      Clamps the maximum value of this tuple to the max parameter.
      void clampMax​(float max, Tuple4f t)
      Clamps the maximum value of the tuple parameter to the max parameter and places the values into this tuple.
      void clampMin​(float min)
      Clamps the minimum value of this tuple to the min parameter.
      void clampMin​(float min, Tuple4f t)
      Clamps the minimum value of the tuple parameter to the min parameter and places the values into this tuple.
      boolean epsilonEquals​(Tuple4f 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 equals​(Tuple4f t1)
      Returns true if all of the data members of Tuple4f t1 are equal to the corresponding data members in this
      void get​(float[] t)
      Copies the value of the elements of this tuple into the array t[].
      void get​(Tuple4f t)
      Gets the value of this tuple and copies the values into the Tuple4f.
      int hashCode()
      Returns a hash number based on the data values in this object.
      void interpolate​(Tuple4f t1, float alpha)
      Linearly interpolates between this tuple and tuple t1 and places the result into this tuple: this = (1-alpha)*this + alpha*t1.
      void interpolate​(Tuple4f t1, Tuple4f t2, float alpha)
      Linearly interpolates between tuples t1 and t2 and places the result into this tuple: this = (1-alpha)*t1 + alpha*t2.
      void negate()
      Negates the value of this vector in place.
      void negate​(Tuple4f t1)
      Sets the value of this tuple to the negation of tuple t1.
      void scale​(float s)
      Sets the value of this tuple to the scalar multiplication of itself.
      void scale​(float s, Tuple4f t1)
      Sets the value of this tuple to the scalar multiplication of tuple t1.
      void scaleAdd​(float s, Tuple4f t1)
      Sets the value of this tuple to the scalar multiplication of itself and then adds tuple t1 (this = s*this + t1).
      void scaleAdd​(float s, Tuple4f t1, Tuple4f t2)
      Sets the value of this tuple to the scalar multiplication of tuple t1 and then adds tuple t2 (this = s*t1 + t2).
      void set​(float[] t)
      Sets the value of this tuple from the 4 values specified in the array.
      void set​(float x, float y, float z, float w)
      Sets the value of this tuple to the specified xyzw coordinates.
      void set​(Tuple4d t1)
      Sets the value of this tuple to the value of tuple t1.
      void set​(Tuple4f t1)
      Sets the value of this tuple to the value of tuple t1.
      void sub​(Tuple4f t1)
      Sets the value of this tuple to the vector difference of itself and tuple t1 (this = this - t1).
      void sub​(Tuple4f t1, Tuple4f t2)
      Sets the value of this tuple to the vector difference of tuple t1 and t2 (this = t1 - t2).
      java.lang.String toString()
      Returns a string that contains the values of this Tuple4f.
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, notify, notifyAll, wait, wait, wait
    • Field Detail

      • x

        public float x
        The x coordinate.
      • y

        public float y
        The y coordinate.
      • z

        public float z
        The z coordinate.
      • w

        public float w
        The w coordinate.
    • Constructor Detail

      • Tuple4f

        public Tuple4f​(float x,
                       float y,
                       float z,
                       float w)
        Constructs and initializes a Tuple4f from the specified xyzw coordinates.
        Parameters:
        x - the x coordinate
        y - the y coordinate
        z - the z coordinate
        w - the w coordinate
      • Tuple4f

        public Tuple4f​(float[] t)
        Constructs and initializes a Tuple4f from the specified array.
        Parameters:
        t - the array of length 4 containing xyzw in order
      • Tuple4f

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

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

        public Tuple4f()
        Constructs and initializes a Tuple4f to (0,0,0,0).
    • Method Detail

      • set

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

        public final void set​(float[] t)
        Sets the value of this tuple from the 4 values specified in the array.
        Parameters:
        t - the array of length 4 containing xyzw in order
      • set

        public final void set​(Tuple4f 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​(Tuple4d 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)
        Copies the value of the elements of this tuple into the array t[].
        Parameters:
        t - the array that will contain the values of the vector
      • get

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

        public final void add​(Tuple4f t1,
                              Tuple4f 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​(Tuple4f 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​(Tuple4f t1,
                              Tuple4f t2)
        Sets the value of this tuple to the vector difference of tuple t1 and t2 (this = t1 - t2).
        Parameters:
        t1 - the first tuple
        t2 - the second tuple
      • sub

        public final void sub​(Tuple4f 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​(Tuple4f t1)
        Sets the value of this tuple to the negation of tuple t1.
        Parameters:
        t1 - the source vector
      • negate

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

        public final void scale​(float s,
                                Tuple4f t1)
        Sets the value of this tuple 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 itself.
        Parameters:
        s - the scalar value
      • scaleAdd

        public final void scaleAdd​(float s,
                                   Tuple4f t1,
                                   Tuple4f 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 multipled
        t2 - the tuple to be added
      • scaleAdd

        public final void scaleAdd​(float s,
                                   Tuple4f 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
      • hashCode

        public int hashCode()
        Returns a hash number based on the data values in this object. Two different Tuple4f objects with identical data values (ie, returns true for equals(Tuple4f) ) will return the same hash number. Two vectors with different data members may return the same hash value, although this is not likely.
        Overrides:
        hashCode in class java.lang.Object
      • equals

        public boolean equals​(Tuple4f t1)
        Returns true if all of the data members of Tuple4f t1 are equal to the corresponding data members in this
        Parameters:
        t1 - the vector with which the comparison is made.
      • epsilonEquals

        public boolean epsilonEquals​(Tuple4f 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), abs(w1-w2)].
        Parameters:
        t1 - the tuple to be compared to this tuple
        epsilon - the threshold value
      • toString

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

        public final void clamp​(float min,
                                float max,
                                Tuple4f 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,
                                   Tuple4f 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,
                                   Tuple4f 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​(Tuple4f 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​(Tuple4f t1,
                                      Tuple4f 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​(Tuple4f 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