📄 vect.java
字号:
///////////////////////////////////////////////////////////
// DeJaved by mDeJava v1.0. Copyright 1999 MoleSoftware. //
// To download last version of this software: //
// http://molesoftware.hypermatr.net //
// e-mail:molesoftware@mail.ru //
///////////////////////////////////////////////////////////
public class Vect
{
public float d[] = null;
Vect(float f, float f1, float f2)
{
d = new float[4];
d[0] = f;
d[1] = f1;
d[2] = f2;
d[3] = 1.0F;
}
public float Magnitude()
{
return (float)Math.sqrt(d[0] * d[0] + d[1] * d[1] + d[2] * d[2]);
}
public boolean Equal(Vect vect)
{
return vect.d[0] == d[0] && vect.d[1] == d[1] && vect.d[2] == d[2];
}
public void Mul(float f)
{
d[0] *= f;
d[1] *= f;
d[2] *= f;
}
public void Div(float f)
{
d[0] /= f;
d[1] /= f;
d[2] /= f;
}
public void Add(Vect vect)
{
d[0] += vect.d[0];
d[1] += vect.d[1];
d[2] += vect.d[2];
}
public void Sub(Vect vect)
{
d[0] -= vect.d[0];
d[1] -= vect.d[1];
d[2] -= vect.d[2];
}
public float Dot(Vect vect)
{
return d[0] * vect.d[0] + d[1] * vect.d[1] + d[2] * vect.d[2];
}
public Vect Cross(Vect vect)
{
return new Vect(d[1] * vect.d[2] - d[2] * vect.d[1], d[2] * vect.d[0] - d[0] * vect.d[2], d[0] * vect.d[1] - d[1] * vect.d[0]);
}
public void Normalize()
{
Mul(1.0F / Magnitude());
}
public void Project()
{
d[2] += 256F;
d[0] *= 1024F / d[2];
d[1] *= 1024F / d[2];
}
public Vect copy()
{
return new Vect(d[0], d[1], d[2]);
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -