Interface IRenderLayer
Represents a rendering layer in the graph canvas. Layers control Z-ordering and transform behavior for groups of elements.
Inspired by:
- react-diagrams: Multiple layer types (LinkLayer, NodeLayer) with transform flags
- Konva.js: Stage → Layer → Group → Shape hierarchy
- Photoshop/Figma: Layer-based compositing model
public interface IRenderLayer
Properties
DisplayName
Display name for debugging and UI purposes.
string DisplayName { get; }
Property Value
IsHitTestVisible
Whether hit testing should include elements in this layer.
bool IsHitTestVisible { get; set; }
Property Value
IsVisible
Whether the layer is currently visible.
bool IsVisible { get; set; }
Property Value
LayerId
Unique identifier for this layer.
string LayerId { get; }
Property Value
TransformMode
How this layer participates in viewport transformations.
LayerTransformMode TransformMode { get; }
Property Value
ZIndex
The Z-order of this layer (lower = behind, higher = in front).
Standard Z-order ranges:
- 0-99: Background layers (grid, guides)
- 100-199: Edge layers
- 200-299: Node layers
- 300-399: Selection/interaction layers
- 400+: Overlay layers (tooltips, menus)
int ZIndex { get; }