package speiger.src.coreengine.math.vector.ints; import java.nio.IntBuffer; 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.floats.Vecf; import speiger.src.coreengine.math.vector.longs.Vecl; import speiger.src.coreengine.math.vector.shorts.Vecs; public interface Veci extends Vec { public Veci set(int value); public Veci add(int value); public Veci sub(int value); public Veci multiply(int value); public Veci devide(int value); public Veci clamp(int min, int max); public Veci clamp(int min, int max, int filter); public long lengthSquared(); public default double length(){return Math.sqrt(lengthSquared());} public Veci store(IntBuffer buffer); public Veci load(IntBuffer buffer); public int[] asArray(); public Vecb asByte(); public Vecs asShort(); public Vecl asLong(); public Vecf asFloat(); public Vecd asDouble(); }