public static Sphere3D operator -(Sphere3D sphere, Vector3 vector) { Sphere3D clone = CloneUtil.CloneDeep(sphere); clone.AddWorldOffset(-vector); return(clone); }
/// <summary> /// 画球 /// </summary> /// <param name="position"></param> /// <param name="color"></param> /// <param name="radius"></param> /// <param name="duration">持续时间</param> /// <param name="isDepthTest"></param> public static void DebugSphere(Vector3 position, float radius, Color color, float duration = 0, bool isDepthTest = true) { if (!Is_Debug_Enable) { return; } var sphere = new Sphere3D(position, radius); sphere.GetDrawLineList().ForEach(kv => { DebugLine(kv.Key, kv.Value, color, duration, isDepthTest); }); }
/// <summary> /// 画球 /// </summary> /// <param name="position"></param> /// <param name="color"></param> /// <param name="radius"></param> public static void HandlesSphere(Vector3 position, float radius, Color color) { if (!Is_Handles_Enable) { return; } using (new HandlesColorScope(color)) { var sphere = new Sphere3D(position, radius); sphere.GetDrawLineList().ForEach(kv => { HandlesLine(kv.Key, kv.Value, color); }); } }