vector3d.java

来自「wince 5.0上基于personal java写的的虚拟魔方」· Java 代码 · 共 55 行

JAVA
55
字号


class Vector3D {
    public float x;
    public float y;
    public float z;
    
    
    public Vector3D (float x, float y, float z) {
        this.x = x;
        this.y = y;
        this.z = z;
    }


    public Vector3D (Vertex ver) {
        x = ver.x;
        y = ver.y;
        z = ver.z;
    }
    
    
    public Vector3D (Vertex v1, Vertex v2) {
        x = v2.x - v1.x;
        y = v2.y - v1.y;
        z = v2.z - v1.z;
    }
    
    
    public static float dotpro (Vector3D v1, Vector3D v2) {
        return v1.x * v2.x +
               v1.y * v2.y +
               v1.z * v2.z ;
    }
    
    
    public static Vector3D crosspro (Vector3D v1, Vector3D v2) {
        return new Vector3D (
            v1.y*v2.z - v1.z*v2.y,
            v1.z*v2.x - v1.x*v2.z,
            v1.x*v2.y - v1.y*v2.x);
    }
    
    
    
    public void Normalize () {
        double length = Math.sqrt (x*x + y*y + z*z);
        x = (float) (x / length);
        y = (float) (y / length);
        z = (float) (z / length);
    }
}


⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?