已知两个点求所在象限并且角度

来源:互联网 发布:华纺未来派 知乎 编辑:程序博客网 时间:2024/06/06 02:35
 public void GetAngle(Vector3 a, Vector3 b)    {        b.x -= a.x;        b.y -= a.y;        if (b.x == 0 && b.y == 0)//目标点在自身点一致        {            //return 0;        }        else if (b.x > 0 && b.y > 0)//目标点在自身点右上        {            float angle = Vector3.Angle(b, new Vector3(1, 0, 0));            //Debug.Log("右上" + angle);            if (angle > 0 && angle < 45)            {            }            else if (angle>= 45)            {            }        }        else if (b.x > 0 && b.y == 0)//目标点在自身点右        {        }        else if (b.x > 0 && b.y < 0)//目标点在自身点右下        {            float angle = Vector3.Angle(b, new Vector3(1, 0, 0));            //Debug.Log("右下" + angle);            if (angle > 0 && angle < 45)            {            }            else if (angle >= 45)            {            }        }        else if (b.x == 0 && b.y > 0)//目标点在自身点上        {        }        else if (b.x == 0 && b.y < 0)//目标点在自身点下        {            Rest();            //transform.LookAt(RandPos);        }        else if (b.x < 0 && b.y < 0)//目标点在自身点左下        {            float angle = Vector3.Angle(b, new Vector3(-1, 0, 0));            //Debug.Log("左下" + angle);            if (angle > 0 && angle < 45)            {            }            else if (angle >= 45)            {            }        }        else if (b.x < 0 && b.y == 0)//目标点在自身点左        {        }        else if (b.x < 0 && b.y > 0)//目标点在自身点左上        {            float angle = Vector3.Angle(b, new Vector3(-1, 0, 0));            //Debug.Log("左上" + angle);            if (angle > 0 && angle < 45)            {            }            else if (angle >= 45)            {            }        }    }
原创粉丝点击