SpatialIndexDebugPainter class
Debug painter that visualizes the spatial index grid.
This painter draws the spatial hashing grid used for efficient hit testing and spatial queries. Each cell shows:
- Grid cell boundary
- Cell coordinates in top-left as
x, ywith green background when mouse is in cell - Object counts below as vertical list:
N: X,P: X,C: X(nodes, ports, connections)
The spatial index grid is typically much larger than the visual grid (default 500px vs 20px) because it's optimized for query performance, not visual reference.
Usage
// In your node flow editor when debugMode is enabled:
if (theme.debugMode) {
CustomPaint(
painter: SpatialIndexDebugPainter(
spatialIndex: controller.spatialIndex,
viewport: controller.viewport,
theme: debugTheme,
mousePositionWorld: currentMousePosition,
),
);
}
- Inheritance
-
- Object
- Listenable
- CustomPainter
- SpatialIndexDebugPainter
Constructors
- SpatialIndexDebugPainter({required GraphSpatialIndex spatialIndex, required GraphViewport viewport, required int version, DebugTheme theme = const DebugTheme(), Offset? mousePositionWorld})
Properties
- hashCode → int
-
The hash code for this object.
no setterinherited
- mousePositionWorld → Offset?
-
The current mouse position in world coordinates.
Used to show a star indicator in the cell containing the cursor.
final
- runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
- semanticsBuilder → SemanticsBuilderCallback?
-
Returns a function that builds semantic information for the picture drawn
by this painter.
no setterinherited
- spatialIndex → GraphSpatialIndex
-
The spatial index to visualize.
final
- theme → DebugTheme
-
Theme for the debug visualization.
final
- version → int
-
The version of the spatial index (used to detect changes).
final
- viewport → GraphViewport
-
The current viewport transformation.
final
Methods
-
addListener(
VoidCallback listener) → void -
Register a closure to be notified when it is time to repaint.
inherited
-
hitTest(
Offset position) → bool? -
Called whenever a hit test is being performed on an object that is using
this custom paint delegate.
inherited
-
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
paint(
Canvas canvas, Size size) → void -
Called whenever the object needs to paint. The given Canvas has its
coordinate space configured such that the origin is at the top left of the
box. The area of the box is the size of the
sizeargument.override -
removeListener(
VoidCallback listener) → void -
Remove a previously registered closure from the list of closures that the
object notifies when it is time to repaint.
inherited
-
shouldRebuildSemantics(
covariant CustomPainter oldDelegate) → bool -
Called whenever a new instance of the custom painter delegate class is
provided to the RenderCustomPaint object, or any time that a new
CustomPaint object is created with a new instance of the custom painter
delegate class (which amounts to the same thing, because the latter is
implemented in terms of the former).
inherited
-
shouldRepaint(
covariant SpatialIndexDebugPainter oldDelegate) → bool -
Called whenever a new instance of the custom painter delegate class is
provided to the RenderCustomPaint object, or any time that a new
CustomPaint object is created with a new instance of the custom painter
delegate class (which amounts to the same thing, because the latter is
implemented in terms of the former).
override
-
toString(
) → String -
A string representation of this object.
inherited
Operators
-
operator ==(
Object other) → bool -
The equality operator.
inherited