For the complete documentation index, see llms.txt. This page is also available as Markdown.

CircleRuntime

Introduction

CircleRuntime draws a circle with a fill and an outline (stroke). The circle is sized to fit within its Width × Height bounds. The fill is set by FillColor; the outline is set by StrokeColor and StrokeWidth. On top of fill and outline, a CircleRuntime can also render a gradient, a drop shadow, and a dashed outline.

A freshly-constructed CircleRuntime is 32 × 32 and renders as a stroke-only outlineIsFilled defaults to false, so the fill is gated off even though FillColor defaults to opaque white. StrokeColor defaults to white and StrokeWidth defaults to 1. Set IsFilled = true to show the fill (assigning FillColor alone does not show it), or set StrokeWidth to 0 to hide the outline.

IsFilled defaults to false because CircleRuntime is historically outline-only. It pairs with an opaque white FillColor, so setting IsFilled = true alone yields a visible white fill — see Shapes for the full rationale.

For the full property surface — fill, outline, gradient, drop shadow, dashed stroke, and the platform/package requirements — see the Shapes page. The examples below cover the common cases.

A CircleRuntime also exposes a Radius property, but sizing through Width / Height is recommended — it keeps the circle consistent with every other visual and participates in the layout system. Setting Radius simply sets Width and Height to Radius × 2.

On MonoGame, KNI, and FNA the outline and geometry render out of the box, but the fill and the richer effects (gradient, drop shadow, dashed stroke, anti-aliasing) only draw once the Gum.Shapes.<platform> package is added — otherwise they are stored and round-trip but silently do not draw. Skia, .NET MAUI, and raylib support the full surface natively. See the Shapes page for setup.

Code Example

The following code creates an outlined CircleRuntime:

// Initialize
var circle = new CircleRuntime();
circle.Width = 128;
circle.Height = 128;
circle.StrokeColor = Color.Green; // This is a Microsoft.Xna.Framework.Color
container.Children.Add(circle);
Green outlined circle

To fill the circle, set IsFilled = true and assign a FillColor. On MonoGame, KNI, and FNA the fill requires the shape support package (see the Shapes page):

Legacy color members

Last updated

Was this helpful?