Class Vec2

  • All Implemented Interfaces:
    java.io.Serializable

    public class Vec2
    extends java.lang.Object
    implements java.io.Serializable
    A 2D column vector
    See Also:
    Serialized Form
    • Field Summary

      Fields 
      Modifier and Type Field Description
      private static long serialVersionUID  
      float x  
      float y  
    • Constructor Summary

      Constructors 
      Constructor Description
      Vec2()  
      Vec2​(float x, float y)  
      Vec2​(Vec2 toCopy)  
    • Field Detail

      • x

        public float x
      • y

        public float y
    • Constructor Detail

      • Vec2

        public Vec2()
      • Vec2

        public Vec2​(float x,
                    float y)
      • Vec2

        public Vec2​(Vec2 toCopy)
    • Method Detail

      • setZero

        public final void setZero()
        Zero out this vector.
      • set

        public final Vec2 set​(float x,
                              float y)
        Set the vector component-wise.
      • set

        public final Vec2 set​(Vec2 v)
        Set this vector to another vector.
      • add

        public final Vec2 add​(Vec2 v)
        Return the sum of this vector and another; does not alter either one.
      • sub

        public final Vec2 sub​(Vec2 v)
        Return the difference of this vector and another; does not alter either one.
      • mul

        public final Vec2 mul​(float a)
        Return this vector multiplied by a scalar; does not alter this vector.
      • negate

        public final Vec2 negate()
        Return the negation of this vector; does not alter this vector.
      • negateLocal

        public final Vec2 negateLocal()
        Flip the vector and return it - alters this vector.
      • addLocal

        public final Vec2 addLocal​(Vec2 v)
        Add another vector to this one and returns result - alters this vector.
      • addLocal

        public final Vec2 addLocal​(float x,
                                   float y)
        Adds values to this vector and returns result - alters this vector.
      • subLocal

        public final Vec2 subLocal​(Vec2 v)
        Subtract another vector from this one and return result - alters this vector.
      • mulLocal

        public final Vec2 mulLocal​(float a)
        Multiply this vector by a number and return result - alters this vector.
      • skew

        public final Vec2 skew()
        Get the skew vector such that dot(skew_vec, other) == cross(vec, other)
      • skew

        public final void skew​(Vec2 out)
        Get the skew vector such that dot(skew_vec, other) == cross(vec, other)
      • length

        public final float length()
        Return the length of this vector.
      • lengthSquared

        public final float lengthSquared()
        Return the squared length of this vector.
      • normalize

        public final float normalize()
        Normalize this vector and return the length before normalization. Alters this vector.
      • isValid

        public final boolean isValid()
        True if the vector represents a pair of valid, non-infinite floating point numbers.
      • abs

        public final Vec2 abs()
        Return a new vector that has positive components.
      • absLocal

        public final void absLocal()
      • clone

        public final Vec2 clone()
        Return a copy of this vector.
        Overrides:
        clone in class java.lang.Object
      • toString

        public final java.lang.String toString()
        Overrides:
        toString in class java.lang.Object
      • abs

        public static final Vec2 abs​(Vec2 a)
      • absToOut

        public static final void absToOut​(Vec2 a,
                                          Vec2 out)
      • dot

        public static final float dot​(Vec2 a,
                                      Vec2 b)
      • cross

        public static final float cross​(Vec2 a,
                                        Vec2 b)
      • cross

        public static final Vec2 cross​(Vec2 a,
                                       float s)
      • crossToOut

        public static final void crossToOut​(Vec2 a,
                                            float s,
                                            Vec2 out)
      • crossToOutUnsafe

        public static final void crossToOutUnsafe​(Vec2 a,
                                                  float s,
                                                  Vec2 out)
      • cross

        public static final Vec2 cross​(float s,
                                       Vec2 a)
      • crossToOut

        public static final void crossToOut​(float s,
                                            Vec2 a,
                                            Vec2 out)
      • crossToOutUnsafe

        public static final void crossToOutUnsafe​(float s,
                                                  Vec2 a,
                                                  Vec2 out)
      • negateToOut

        public static final void negateToOut​(Vec2 a,
                                             Vec2 out)
      • minToOut

        public static final void minToOut​(Vec2 a,
                                          Vec2 b,
                                          Vec2 out)
      • maxToOut

        public static final void maxToOut​(Vec2 a,
                                          Vec2 b,
                                          Vec2 out)
      • hashCode

        public int hashCode()
        Overrides:
        hashCode in class java.lang.Object
        See Also:
        Object.hashCode()
      • equals

        public boolean equals​(java.lang.Object obj)
        Overrides:
        equals in class java.lang.Object
        See Also:
        Object.equals(java.lang.Object)