/// <summary> /// Draws a circle in screen space. /// </summary> /// <param name="screenX"></param> /// <param name="screenY"></param> /// <param name="radius"></param> /// <returns></returns> public VisualLogCircleEntry DrawCircle(float screenX, float screenY, float radius) { VisualLogCircleEntry entry = new VisualLogCircleEntry(); entry.Pos = new Vector3(screenX, screenY, 0.0f); entry.Radius = radius; this.Draw(entry); return(entry); }
/// <summary> /// Draws a circle in world space. /// </summary> /// <param name="worldX"></param> /// <param name="worldY"></param> /// <param name="worldZ"></param> /// <param name="radius"></param> /// <returns></returns> public VisualLogCircleEntry DrawCircle(float worldX, float worldY, float worldZ, float radius) { VisualLogCircleEntry entry = new VisualLogCircleEntry(); entry.Pos = new Vector3(worldX, worldY, worldZ); entry.Anchor = VisualLogAnchor.World; entry.Radius = radius; this.Draw(entry); return(entry); }
/// <summary> /// Prohibits scale changes due to perspective transformation. /// </summary> /// <param name="entry"></param> /// <returns></returns> public static VisualLogCircleEntry DontScale(this VisualLogCircleEntry entry) { entry.InvariantScale = true; return(entry); }
/// <summary> /// Instead of a full circle, only a certain angular segment of the circle will be displayed. /// </summary> /// <param name="entry"></param> /// <param name="minAngle"></param> /// <param name="maxAngle"></param> /// <returns></returns> public static VisualLogCircleEntry Segment(this VisualLogCircleEntry entry, float minAngle, float maxAngle) { entry.MinAngle = minAngle; entry.MaxAngle = maxAngle; return(entry); }