Grid<T> class abstract mixin

Stores elements of a certain type T in a 2-dimensional grid structure.

This class is designed to implemented or used as a mixin by other implementations that provide the actual storage and retrieval of elements. If extended or mixed-in, default implementations are provided for most methods, but the implementor may choose to override them for performance.

Implementers

Constructors

Grid(int width, int height, T fill)
Creates a new grid with the given width and height.
factory
Grid.empty()
Creates an empty grid with no cells.
factory
Grid.fromCells(Iterable<T> cells, {required int width})
Creates a new grid from the given cells and width.
factory
Grid.fromRows(Iterable<Iterable<T>> rows)
Creates a new grid from the given rows.
factory
Grid.generate(int width, int height, T generator(int x, int y))
Creates a new grid with the given width and height.
factory
Grid.view(Grid<T> grid, Rect bounds)
Creates a sub-grid view into this grid within the given bounds.
factory

Properties

cells Iterable<T>
Cells in the grid.
no setter
columns Iterable<Iterable<T>>
Each column of cells in the grid from left to right.
no setter
hashCode int
The hash code for this object.
no setterinherited
height int
Height of the buffer.
no setter
indexed Iterable<(int, int, T)>
Each cell in the grid with its x and y coordinates.
no setter
rows Iterable<Iterable<T>>
Each row of cells in the grid from top to bottom.
no setter
runtimeType Type
A representation of the runtime type of the object.
no setterinherited
width int
Width of the buffer.
no setter

Methods

area([Offset offset = Offset.zero]) Rect
Returns the area of the grid as a rectangle with an optional offset.
get(int x, int y) → T
Returns the cell at the given x and y coordinates.
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
set(int x, int y, T cell) → void
Sets the cell at the given x and y coordinates to cell.
subGrid(Rect bounds) Grid<T>
Returns a sub-grid view into this grid within the given bounds.
toString() String
A string representation of this object.
inherited

Operators

operator ==(Object other) bool
The equality operator.
inherited