SRC 向量

来源:互联网 发布:java excel api maven 编辑:程序博客网 时间:2024/05/11 14:35

transform.forward 为z轴向量,初始为单位向量(0,0,1) 根据旋转角度得到相应的单位向量

Vector3 forward = transform.forward

Vector3 right = new Vector3(forward.z, forward.y, -forward.x);  // 垂直于当前向量的右向量

        Vector3 left =  new Vector3(vector3.x * -1,vector3.y * -1,vector3.z * -1);// 垂直于当前向量的左向量


        Vector3 leftDotWidth = dot(left, (width/2));  // 相对于当前点为起始点的固定长度的向量

        Vector3 leftBottomPos = add(leftDotWidth,v.x,v.y,v.z);// 相对于世界坐标为起始点的向量

        Vector3 rightDotWidth = dot(right, (width/2));;// 相对于当前点为起始点的固定长度的向量

        Vector3 rightBottomPos = add(rightDotWidth,v.x,v.y,v.z);//相对于世界坐标为起始点的向量


        Vector3 leftHeadPos = add(dot(forward, length),leftBottomPos.x,leftBottomPos.y,leftBottomPos.z); // 矩形左上点向量
        Vector3 rightHeadPos = add(dot(forward, length),rightBottomPos.x,rightBottomPos.y,rightBottomPos.z);//矩形右上点向量


private Vector3 dot(Vector3 vector3,float value) {
    return new Vector3(vector3.x * value,vector3.y * value,vector3.z * value);
    }


private Vector3 add(Vector3 vector3,float x,float y,float z) {
    vector3.x = vector3.x + x;
    vector3.y = vector3.y + y;
    vector3.z = vector3.z + z;
    return vector3;
    }

0 0
原创粉丝点击