Class PortRenderContext
- Namespace
- FlowGraph.Avalonia.Rendering.PortRenderers
- Assembly
- FlowGraph.Avalonia.dll
Context information passed to port renderers.
TRANSFORM-BASED RENDERING:
Scale is always 1.0 - create visuals at logical size. The MatrixTransform on MainCanvas handles zoom. This enables O(1) zoom.
public class PortRenderContext
- Inheritance
-
PortRenderContext
- Inherited Members
Properties
Index
Index of this port among its siblings.
public required int Index { get; init; }
Property Value
InverseScale
Inverse scale for constant-size elements (1/ViewportZoom). Apply as ScaleTransform to elements that should stay same screen size.
public double InverseScale { get; }
Property Value
IsOutput
Whether this is an output port (true) or input port (false).
public required bool IsOutput { get; init; }
Property Value
Scale
Logical scale for visual sizing. Always 1.0 in transform-based rendering.
public required double Scale { get; init; }
Property Value
Settings
Canvas settings.
public required FlowCanvasSettings Settings { get; init; }
Property Value
Theme
Theme resources for styling.
public required ThemeResources Theme { get; init; }
Property Value
TotalPorts
Total number of sibling ports.
public required int TotalPorts { get; init; }
Property Value
ViewportZoom
Actual viewport zoom level. Use for calculations, not visual sizing.
public double ViewportZoom { get; init; }