Table of Contents

Class AvaloniaCoordinateExtensions

Namespace
FlowGraph.Avalonia.Coordinates
Assembly
FlowGraph.Avalonia.dll

Extension methods for converting between FlowGraph typed coordinates and Avalonia types.

These extension methods provide seamless integration between the type-safe coordinate system and Avalonia's native types. Use these at the boundary between coordinate-safe code and Avalonia-specific rendering/hit-testing code.

public static class AvaloniaCoordinateExtensions
Inheritance
AvaloniaCoordinateExtensions
Inherited Members

Examples

// Get typed coordinate from input
CanvasPoint canvasPos = context.Coordinates.GetPointerCanvasPosition(e);

// Convert to Avalonia for rendering
context.DrawEllipse(brush, pen, canvasPos.ToAvalonia(), 5, 5);

// Convert from Avalonia hit test result
var hitPoint = e.GetPosition(mainCanvas);
var canvasHit = hitPoint.ToCanvasPoint();

Methods

ToAvalonia(CanvasPoint)

Converts a CanvasPoint to an Avalonia Point.

public static Point ToAvalonia(this CanvasPoint canvas)

Parameters

canvas CanvasPoint

Returns

Point

ToAvalonia(CanvasRect)

Converts a CanvasRect to an Avalonia Rect.

public static Rect ToAvalonia(this CanvasRect canvas)

Parameters

canvas CanvasRect

Returns

Rect

ToAvalonia(CanvasVector)

Converts a CanvasVector to an Avalonia Point (treating vector as point). Some Avalonia APIs use Point for both positions and deltas.

public static Point ToAvalonia(this CanvasVector vector)

Parameters

vector CanvasVector

Returns

Point

ToAvalonia(ViewportPoint)

Converts a ViewportPoint to an Avalonia Point.

public static Point ToAvalonia(this ViewportPoint viewport)

Parameters

viewport ViewportPoint

Returns

Point

ToAvalonia(ViewportRect)

Converts a ViewportRect to an Avalonia Rect.

public static Rect ToAvalonia(this ViewportRect viewport)

Parameters

viewport ViewportRect

Returns

Rect

ToAvalonia(ViewportVector)

Converts a ViewportVector to an Avalonia Point (treating vector as point).

public static Point ToAvalonia(this ViewportVector vector)

Parameters

vector ViewportVector

Returns

Point

ToCanvasPoint(Point)

Converts an Avalonia Point to a CanvasPoint. Use when you know the point is in canvas space (e.g., from GetPosition(MainCanvas)).

public static CanvasPoint ToCanvasPoint(this Point point)

Parameters

point Point

Returns

CanvasPoint

ToCanvasRect(Rect)

Converts an Avalonia Rect to a CanvasRect. Use when you know the rect is in canvas space.

public static CanvasRect ToCanvasRect(this Rect rect)

Parameters

rect Rect

Returns

CanvasRect

ToCanvasSpace(Point, ITypedCoordinateTransformer)

Converts an Avalonia Point from viewport to canvas space using a transformer.

public static Point ToCanvasSpace(this Point viewportPoint, ITypedCoordinateTransformer transformer)

Parameters

viewportPoint Point

Point in viewport coordinates.

transformer ITypedCoordinateTransformer

The coordinate transformer.

Returns

Point

Point in canvas coordinates.

ToCanvasSpace(Rect, ITypedCoordinateTransformer)

Converts an Avalonia Rect from viewport to canvas space using a transformer.

public static Rect ToCanvasSpace(this Rect viewportRect, ITypedCoordinateTransformer transformer)

Parameters

viewportRect Rect
transformer ITypedCoordinateTransformer

Returns

Rect

ToCanvasVector(Point)

Converts an Avalonia Point (used as delta) to a CanvasVector.

public static CanvasVector ToCanvasVector(this Point point)

Parameters

point Point

Returns

CanvasVector

ToCanvasVector(Size)

Converts an Avalonia Size to a CanvasVector (treating size as dimensions).

public static CanvasVector ToCanvasVector(this Size size)

Parameters

size Size

Returns

CanvasVector

ToViewportPoint(Point)

Converts an Avalonia Point to a ViewportPoint. Use when you know the point is in viewport space (e.g., from GetPosition(RootPanel)).

public static ViewportPoint ToViewportPoint(this Point point)

Parameters

point Point

Returns

ViewportPoint

ToViewportRect(Rect)

Converts an Avalonia Rect to a ViewportRect. Use when you know the rect is in viewport space.

public static ViewportRect ToViewportRect(this Rect rect)

Parameters

rect Rect

Returns

ViewportRect

ToViewportSpace(Point, ITypedCoordinateTransformer)

Converts an Avalonia Point from canvas to viewport space using a transformer.

public static Point ToViewportSpace(this Point canvasPoint, ITypedCoordinateTransformer transformer)

Parameters

canvasPoint Point

Point in canvas coordinates.

transformer ITypedCoordinateTransformer

The coordinate transformer.

Returns

Point

Point in viewport coordinates.

ToViewportSpace(Rect, ITypedCoordinateTransformer)

Converts an Avalonia Rect from canvas to viewport space using a transformer.

public static Rect ToViewportSpace(this Rect canvasRect, ITypedCoordinateTransformer transformer)

Parameters

canvasRect Rect
transformer ITypedCoordinateTransformer

Returns

Rect

ToViewportVector(Point)

Converts an Avalonia Point (used as delta) to a ViewportVector.

public static ViewportVector ToViewportVector(this Point point)

Parameters

point Point

Returns

ViewportVector

ToViewportVector(Size)

Converts an Avalonia Size to a ViewportVector (treating size as dimensions).

public static ViewportVector ToViewportVector(this Size size)

Parameters

size Size

Returns

ViewportVector