SimpleJavaEngine/src/main/java/speiger/src/coreengine/math/vector/longs/Vecl.java

35 lines
1014 B
Java

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