@Override
    public int hashCode() {
        int hash = 37;
        hash = 37 * hash + Float.floatToIntBits(x);
        hash = 37 * hash + Float.floatToIntBits(y);
        hash = 37 * hash + Float.floatToIntBits(z);
        hash = 37 * hash + Float.floatToIntBits(w);
        return hash;

    }
Returns a hash code. If two quaternions have identical values, they
will have the same hash code. The current instance is unaffected.

@return a 32-bit value for use in hashing
@see java.lang.Object#hashCode()
jme3-core/src/main/java/com/jme3/math/Quaternion.java