UnityEngine.Mathf.Atan2 C# (CSharp) Method

Atan2() public static method

public static Atan2 ( float y, float x ) : float
y float
x float
return float
        public static float Atan2(float y, float x)
        {
            return (float)Math.Atan2(y, x);
        }

Usage Example

コード例 #1
0
        static void DrawVO(Vector2 circleCenter, float radius, Vector2 origin)
        {
            float alpha = Mathf.Atan2((origin - circleCenter).y, (origin - circleCenter).x);
            float gamma = radius / (origin - circleCenter).magnitude;
            float delta = gamma <= 1.0f ? Mathf.Abs(Mathf.Acos(gamma)) : 0;

            Draw.Debug.CircleXZ(FromXZ(circleCenter), radius, Color.black, alpha - delta, alpha + delta);
            Vector2 p1 = new Vector2(Mathf.Cos(alpha - delta), Mathf.Sin(alpha - delta)) * radius;
            Vector2 p2 = new Vector2(Mathf.Cos(alpha + delta), Mathf.Sin(alpha + delta)) * radius;

            Vector2 p1t = -new Vector2(-p1.y, p1.x);
            Vector2 p2t = new Vector2(-p2.y, p2.x);

            p1 += circleCenter;
            p2 += circleCenter;

            Debug.DrawRay(FromXZ(p1), FromXZ(p1t).normalized *100, Color.black);
            Debug.DrawRay(FromXZ(p2), FromXZ(p2t).normalized *100, Color.black);
        }
All Usage Examples Of UnityEngine.Mathf::Atan2