/// <summary> /// 楕円の範囲内かどうか (2次元) /// </summary> public static bool IsInEllipse(Vector2 center, Vector2 radius, Vector2 position) { var sum = 0f; for (var i = 0; i < 2; i++) { var a = (position[i] - center[i]); sum += (a * a) / (radius[i] * radius[i]); } return sum <= 1; } /// <summary> /// 楕円の範囲内かどうか (3次元) /// </summary> public static bool IsInEllipse(Vector3 center, Vector3 radius, Vector3 position) { var sum = 0f; for (var i = 0; i < 3; i++) { var a = (position[i] - center[i]); sum += (a * a) / (radius[i] * radius[i]); } return sum <= 1; }