Vixen
02b45cc4
csharp
public readonly record struct CornerRadii

A box's four corners, each with its own horizontal and vertical radius.

No guide page documents this yet — the page shows what the code says about itself.

Remarks

⚠ Elliptical, not circular, which is CSS's border-radius: 40px / 20px and is what a pill-shaped button whose height is not its width actually needs. A circular radius is the special case where the two are equal, and Uniform writes it.

Clockwise from the top left, which is the order CSS lists them in and the order the shader indexes them by. Written down because the alternative — anticlockwise, or starting elsewhere — draws a plausible shape with the wrong corner rounded, and that is a mistake that survives a review.

Fields and properties (5)

  • public Vector2 TopLeft

    Its horizontal and vertical radius.

  • public Vector2 TopRight

    Ditto.

  • public Vector2 BottomRight

    Ditto.

  • public Vector2 BottomLeft

    Ditto.

  • public bool IsSquare

    Whether every corner is square.

Methods (3)

  • public CornerRadii(Vector2 TopLeft, Vector2 TopRight, Vector2 BottomRight, Vector2 BottomLeft)

    A box's four corners, each with its own horizontal and vertical radius.

  • public static CornerRadii Uniform(float radius)

    The same circular radius on every corner.

  • public static CornerRadii Circular(float topLeft, float topRight, float bottomRight, float bottomLeft)

    A circular radius per corner, clockwise from the top left.

Used by (8)

  • BoxStyleVixen.Ui
  • ColorFieldVixen.Ui.Controls.Advanced
  • CurveEditorVixen.Ui.Controls.Advanced
  • GradientRailVixen.Ui.Controls.Advanced
  • UiGeometryBuilderVixen.Ui
  • UiGeometryTestsVixen.Ui.Tests
  • UiImageTestsVixen.Graphics.Golden.Tests
  • UiShapeVixen.Ui