Lays out elements in an a circular way.

CircleLayout must be placed inside a Panel, and will apply to the elements inside it.

We can use StartAngleDegrees and EndAngleDegrees to define how much of the circle will be covered. Here zero degrees equals 3 o'clock.

Note that EndAngleDegrees should be greater than StartAngleDegrees to avoid layout calculation issues.

Example

<Panel Color="#000000">
    <CircleLayout />
    <Circle Fill="#ff00ff" />
    <Circle Fill="#7f7fff" />
    <Circle Fill="#00ffff" />
    <Circle Fill="#7fff7f" />
    <Circle Fill="#ffff00" />
    <Circle Fill="#ff7f7f" />
</Panel>

The layout calculation is done by fitting circles into a large circle. The elements inside are all treated as circles, such that arranging them they all just touch the Radius edge and each other (with a zero arc-spacing).

Location

Namespace
Fuse.Layouts
Package
Fuse.Controls.Panels 1.9.0

Interface of CircleLayout

Inherited from Layout

Inherited from PropertyObject

Inherited from object

Attached UX Attributes

GlobalKey (attached by Resource) : string ux

The ux:Global attribute creates a global resource that is accessible everywhere in UX markup.

Implemented Interfaces