Class FlexalonCircleLayout
Use a circle layout to position children along a circle or spiral.
Inheritance
object
UnityEngine.Object
UnityEngine.Component
UnityEngine.Behaviour
UnityEngine.MonoBehaviour
FlexalonCircleLayout
Syntax
[AddComponentMenu("Flexalon/Flexalon Circle Layout")]
[HelpURL("https://www.flexalon.com/docs/circleLayout")]
public class FlexalonCircleLayout : LayoutBase, Layout
Properties
InitialRadius
Determines the initial radius of the circle.
Declaration
public FlexalonCircleLayout.InitialRadiusOptions InitialRadius { get; set; }
Property Value
Plane
Determines on which plane to create the circle.
Declaration
public Plane Plane { get; set; }
Property Value
PlaneAlign
Aligns the layout with the size set by the Flexalon Object Component.
For a circle, this will align each individual object in the layout. For a spiral,
this will align the entire spiral.
Declaration
public Align PlaneAlign { get; set; }
Property Value
Radius
Initial radius of the circle.
Declaration
public float Radius { get; set; }
Property Value
RadiusStep
Determines how much the radius should change at each interval.
Declaration
public float RadiusStep { get; set; }
Property Value
RadiusType
Determines if and how the radius changes.
Declaration
public FlexalonCircleLayout.RadiusOptions RadiusType { get; set; }
Property Value
Rotate
Determines how children should be rotated.
Declaration
public FlexalonCircleLayout.RotateOptions Rotate { get; set; }
Property Value
SpacingDegrees
Declaration
public float SpacingDegrees { get; set; }
Property Value
SpacingType
Determines how the space between children is distributed.
Declaration
public FlexalonCircleLayout.SpacingOptions SpacingType { get; set; }
Property Value
Spiral
If checked, positions each object at increasing heights to form a spiral.
Declaration
public bool Spiral { get; set; }
Property Value
SpiralSpacing
Vertical spacing between objects in the spiral.
Declaration
public float SpiralSpacing { get; set; }
Property Value
StartAtDegrees
By default, the first child will be placed at (radius, 0, 0).
Start At Degrees value will add an offset all children around the circle.
Declaration
public float StartAtDegrees { get; set; }
Property Value
Methods
Arrange(FlexalonNode, Vector3)
Position the children of node within the available bounds.
Declaration
public override void Arrange(FlexalonNode node, Vector3 layoutSize)
Parameters
Type |
Name |
Description |
FlexalonNode |
node |
|
UnityEngine.Vector3 |
layoutSize |
|
Overrides
Initialize()
Declaration
protected override void Initialize()
Overrides
Measure(FlexalonNode, Vector3, Vector3, Vector3)
Perform minimal work to determine what the size of node and available size for node's children.
Declaration
public override Bounds Measure(FlexalonNode node, Vector3 size, Vector3 min, Vector3 max)
Parameters
Type |
Name |
Description |
FlexalonNode |
node |
|
UnityEngine.Vector3 |
size |
|
UnityEngine.Vector3 |
min |
|
UnityEngine.Vector3 |
max |
|
Returns
Type |
Description |
UnityEngine.Bounds |
|
Overrides
ShrinkFillChildrenToCircleHeight(FlexalonNode, float, int)
Declaration
public void ShrinkFillChildrenToCircleHeight(FlexalonNode node, float height, int heightAxis)
Parameters
Type |
Name |
Description |
FlexalonNode |
node |
|
float |
height |
|
int |
heightAxis |
|
ShrinkFillChildrenToDiameter(FlexalonNode, float, int, int, Vector3)
Declaration
public void ShrinkFillChildrenToDiameter(FlexalonNode node, float spacing, int circleAxis1, int circleAxis2, Vector3 size)
Parameters
Type |
Name |
Description |
FlexalonNode |
node |
|
float |
spacing |
|
int |
circleAxis1 |
|
int |
circleAxis2 |
|
UnityEngine.Vector3 |
size |
|
ShrinkFillChildrenToSpiralHeight(FlexalonNode, float, int, float)
Declaration
public void ShrinkFillChildrenToSpiralHeight(FlexalonNode node, float height, int heightAxis, float size)
Parameters
Type |
Name |
Description |
FlexalonNode |
node |
|
float |
height |
|
int |
heightAxis |
|
float |
size |
|
Upgrade(int)
Declaration
protected override void Upgrade(int fromVersion)
Parameters
Type |
Name |
Description |
int |
fromVersion |
|
Overrides
Implements