private static void DrawVO(Vector2 circleCenter, float radius, Vector2 origin) { float num = Mathf.Atan2((origin - circleCenter).y, (origin - circleCenter).x); float num2 = radius / (origin - circleCenter).magnitude; float num3 = (num2 > 1f) ? 0f : Mathf.Abs(Mathf.Acos(num2)); Agent.DrawCircle(circleCenter, radius, num - num3, num + num3, Color.black); Vector2 vector = new Vector2(Mathf.Cos(num - num3), Mathf.Sin(num - num3)) * radius; Vector2 vector2 = new Vector2(Mathf.Cos(num + num3), Mathf.Sin(num + num3)) * radius; Vector2 p = -new Vector2(-vector.y, vector.x); Vector2 p2 = new Vector2(-vector2.y, vector2.x); vector += circleCenter; vector2 += circleCenter; Debug.DrawRay(Agent.To3D(vector), Agent.To3D(p).normalized * 100f, Color.black); Debug.DrawRay(Agent.To3D(vector2), Agent.To3D(p2).normalized * 100f, Color.black); }
private static void DrawCircle(Vector2 _p, float radius, Color col) { Agent.DrawCircle(_p, radius, 0f, 6.28318548f, col); }