Atan(x/y)的なやつや,ベクトルを引数に取れるAtan2がよく検索に引っかかりますが、プログラムでは条件分岐ができるのでこんな風に素朴に書いちゃってもいいと思います。
スマートではないですが左右反転させたいとか角度を測る基準が違うときには頭がこんがらがりにくくなると思います。
float Vec2Radian(Vector2 vector)
{
if (vector.y == 0) //x軸上
{
if (vector.x > 0)
{
return Acos(vector.x)
}
else
{
return Acos(vector.x)
}
}
if (vector.y >= 0) //第1,2象限
{
return Acos(vector.x)
}
else //第3,4象限
{
return -Acos(vector.x)
}
}