class Grid implements Iterable<P> {

	@Pure
	public AroundCellIterable<P> getGridCellsAround(Point2D<?, ?> position, double maximalDistance) {
		final int column = getColumnFor(position.getX());
		final int row = getRowFor(position.getY());
		return new AroundIterable(row, column, position, maximalDistance);
	}

	@SuppressWarnings("unchecked")  Grid(int nRows, int nColumns, Rectangle2d bounds);

}