Table of Contents

Interface IPathBuilder

Namespace
Xui.Core.Canvas
Assembly
Core.dll

Defines methods for constructing paths, following the HTML5 Canvas path API model.

Reference: https://developer.mozilla.org/en-US/docs/Web/API/CanvasRenderingContext2D#paths

public interface IPathBuilder : IGlyphPathBuilder
Inherited Members

Methods

Arc(Point, NFloat, NFloat, NFloat, Winding)

Adds an arc to the path centered at the specified point.

void Arc(Point center, NFloat radius, NFloat startAngle, NFloat endAngle, Winding winding = Winding.ClockWise)

Parameters

center Point

Center of the arc.

radius NFloat

Radius of the arc.

startAngle NFloat

Start angle in radians.

endAngle NFloat

End angle in radians.

winding Winding

Direction in which the arc is drawn.

ArcTo(Point, Point, NFloat)

Adds an arc to the path, connecting two tangents defined by control points.

void ArcTo(Point cp1, Point cp2, NFloat radius)

Parameters

cp1 Point

First control point.

cp2 Point

Second control point.

radius NFloat

Arc radius.

BeginPath()

Begins a new path by resetting the current path list.

void BeginPath()

CurveTo(Point, Point, Point)

Draws a cubic Bézier curve from the current point to the specified point, using two control points.

void CurveTo(Point cp1, Point cp2, Point to)

Parameters

cp1 Point

First control point.

cp2 Point

Second control point.

to Point

End point.

Ellipse(Point, NFloat, NFloat, NFloat, NFloat, NFloat, Winding)

Adds an elliptical arc to the path.

void Ellipse(Point center, NFloat radiusX, NFloat radiusY, NFloat rotation, NFloat startAngle, NFloat endAngle, Winding winding = Winding.ClockWise)

Parameters

center Point

Center of the ellipse.

radiusX NFloat

Horizontal radius.

radiusY NFloat

Vertical radius.

rotation NFloat

Rotation of the ellipse, in radians.

startAngle NFloat

Start angle in radians.

endAngle NFloat

End angle in radians.

winding Winding

Direction in which the arc is drawn.

Rect(Rect)

Adds a rectangle path to the current path.

void Rect(Rect rect)

Parameters

rect Rect

The rectangle to add.

RoundRect(Rect, NFloat)

Adds a rounded rectangle path with a uniform radius.

void RoundRect(Rect rect, NFloat radius)

Parameters

rect Rect

The rectangle to round.

radius NFloat

Corner radius.

RoundRect(Rect, CornerRadius)

Adds a rounded rectangle path with per-corner radii.

void RoundRect(Rect rect, CornerRadius radius)

Parameters

rect Rect

The rectangle to round.

radius CornerRadius

Corner radius object defining each corner.