package speiger.src.coreengine.math.vector.floats; import java.nio.FloatBuffer; import speiger.src.coreengine.math.vector.Vec; import speiger.src.coreengine.math.vector.bytes.Vecb; import speiger.src.coreengine.math.vector.doubles.Vecd; import speiger.src.coreengine.math.vector.ints.Veci; import speiger.src.coreengine.math.vector.longs.Vecl; import speiger.src.coreengine.math.vector.shorts.Vecs; public interface Vecf extends Vec { public Vecf set(float value); public Vecf add(float value); public Vecf sub(float value); public Vecf multiply(float value); public Vecf devide(float value); public Vecf clamp(float min, float max); public Vecf clamp(float min, float max, int filter); public float lengthSquared(); public default float length(){return (float)Math.sqrt(lengthSquared());} public Vecf store(FloatBuffer buffer); public Vecf load(FloatBuffer buffer); public float[] asArray(); public Vecb asByte(); public Vecs asShort(); public Veci asInt(); public Vecl asLong(); public Vecd asDouble(); }