Tile that this cursor runs over
Analysis area
The distance from the focus that the bounding box of this cursor extends. e.g. if the bounding box is 3x3, then the distance from center is 1.
A CellSet reperesenting unmasked cells currently within the cursor bounds, that were added by the previous cursor movement.
A CellSet reperesenting unmasked cells currently within the cursor bounds, that were added by the previous cursor movement. If the cursor has not been moved (i.e. if isReset == true) then addedCells represents the same thing as allCells.
A CellSet reperesenting all unmasked cells that are within the cursor bounds.
Centers the cursor on a cell of the raster.
Centers the cursor on a cell of the raster. Added\Removed cells are not kept track of between centering moves, and centering the cursor resets the state.
Column of raster to center on.
Row of raster to center on.
Cursor column relative to the analysis area.
Cursor column relative to the analysis area.
For example, if the analysis area starts at col 2 and the focusX is currently 3, then the col should be 1.
The distance from the focus that the bounding box of this cursor extends.
The distance from the focus that the bounding box of this cursor extends. e.g. if the bounding box is 3x3, then the distance from center is 1.
Iterates over all cell values of the raster which are covered by the cursor and not masked.
Iterates over all cell values of the raster which are covered by the cursor and not masked.
Function that receives from each cell it's col and row coordinates and it's value.
Iterates over all cell values of the raster which are covered by the cursor and not masked, that were exposed as part of the last move of the cursor.
Iterates over all cell values of the raster which are covered by the cursor and not masked, that were exposed as part of the last move of the cursor.
For instance, if move(Movement.Up) is called, then there will potentially be a new row that is now covered by the cursor, which are now covered. These values will be included for the iterations of this function, as well any previously masked cell values that were unmasked as part of the move.
Function that receives from each cell it's col and row coordinates and it's value.
Iterates over all cell values of the raster which are no longer covered by the cursor as part of the last move last move of the cursor.
Iterates over all cell values of the raster which are no longer covered by the cursor as part of the last move last move of the cursor.
For instance, if move(Movement.Up) is called, then there will potentially be a new row at the bottom of the cursor that is now uncovered by the cursor. These values will be included for the iterations of this function, as well any previously unmasked cell values that were masked as part of the move.
Function that receives from each cell it's col and row coordinates and it's value.
Indicates whether or not this cursor has been moved and is tracking state between the previous position and the current position
Move the cursor one cell space in a horizontal of vertical direction.
Move the cursor one cell space in a horizontal of vertical direction. The cursor will keep track of what cells became added by this move (covered by the cursor or unmasked), and what cells became removed by this move (no longer covered by the cursor or masked when previously unmasked). The cursor will only keep the state of one move, so if two moves are done in a row, the state of the first move is forgotten. Only the difference between the cursor and it's most recent previous position are accounted for.
param m Movement enum that represents moving the cursor Up, Down, Left or Right.
A CellSet reperesenting cells that were moved outside the cursor bounds, or unmasked cells that were masked, by the previous cursor movement.
A CellSet reperesenting cells that were moved outside the cursor bounds, or unmasked cells that were masked, by the previous cursor movement. If the cursor has not been moved this will be a no-op.
Cursor row relative to the analysis area
Sets the mask for this cursor.
Sets the mask for this cursor.
Function that takes a col and row of the neighborhood coordinates and returns true if that cell should be masked. The neighborhood coordinates are the size of the cursor's bounding box, with (0, 0) being the top right corner.
Represents a cursor that can be used to iterate over cells within a focal neighborhood.