Package net.imglib2.util
Class Grid
- java.lang.Object
-
- net.imglib2.util.Grid
-
public class Grid extends java.lang.ObjectDefines a regular grid on an interval and translates between interval and grid coordinates.In contrast to
CellGrid, all coordinates are inlong, and gridlines can be shifted such that cells at the min border are truncated.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description classGrid.CellIntervalsprivate classGrid.CellIntervalsRA
-
Field Summary
Fields Modifier and Type Field Description private long[]cellDimensionsprivate Grid.CellIntervalscellIntervalsprivate long[]dimensionsprivate inthashcodeprivate long[]maxBorderSizeprivate long[]minBorderSizeprivate intnprivate long[]numCells
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description longcellDimension(int d)Get the number of pixels in a standard cell in dimensiond.voidcellDimensions(long[] dimensions)Write the number of pixels in a standard cell in each dimension into the provideddimensionsarray.Grid.CellIntervalscellIntervals()booleanequals(java.lang.Object obj)longgetCellDimension(int d, long cellGridPosition)From the position of a cell in the grid, compute the size of the cell in dimensiond.long[]getCellDimensions()Get the number of pixels in a standard cell in each dimension as a new long[].voidgetCellDimensions(long[] cellGridPosition, long[] cellMin, long[] cellDims)From the position of a cell in the grid, compute the image position of the first pixel of the cell (the offset of the cell in image coordinates) and the dimensions of the cell.voidgetCellDimensions(long index, long[] cellMin, long[] cellDims)From the index of a cell in the grid, compute the image position of the first pixel of the cell (the offset of the cell in image coordinates) and the dimensions of the cell.voidgetCellGridPositionFlat(long index, long[] cellGridPosition)From the flattened index of a cell in the grid, compute the position of a cell in the grid.voidgetCellInterval(long[] cellGridPosition, long[] cellMin, long[] cellMax)longgetCellMin(int d, long cellGridPosition)From the position of a cell in the grid, compute the image position in dimensiondof the first pixel of the cell (the offset of the cell in image coordinates).voidgetCellPosition(long[] position, long[] cellPos)Get the grid position of the cell containing the element atposition.voidgetCellPosition(long[] position, Positionable cellPos)Get the grid position of the cell containing the element atposition.long[]getGridDimensions()Get the number of cells in each dimension as a new long[].long[]getImgDimensions()Get the number of pixels in each dimension as a new long[].longgridDimension(int d)Get the number of cells in dimensiond.voidgridDimensions(long[] dimensions)Write the number of cells in each dimension into the provideddimensionsarray.inthashCode()longimgDimension(int d)Get the number of pixels in dimensiond.voidimgDimensions(long[] dimensions)Write the number of pixels in each dimension into the provideddimensionsarray.intnumDimensions()java.lang.StringtoString()
-
-
-
Field Detail
-
n
private final int n
-
dimensions
private final long[] dimensions
-
cellDimensions
private final long[] cellDimensions
-
minBorderSize
private final long[] minBorderSize
-
numCells
private final long[] numCells
-
maxBorderSize
private final long[] maxBorderSize
-
hashcode
private final int hashcode
-
cellIntervals
private final Grid.CellIntervals cellIntervals
-
-
Constructor Detail
-
Grid
public Grid(long[] dimensions, long[] cellDimensions)- Parameters:
dimensions- the dimensions of the image (in pixels, not in cells).cellDimensions- the dimensions of a standard cell (in pixels). Cells on the max border of the image may be cut off and have different dimensions.
-
Grid
public Grid(long[] dimensions, long[] cellDimensions, long[] offset)- Parameters:
dimensions- the dimensions of the image (in pixels, not in cells).cellDimensions- the dimensions of a standard cell (in pixels). Cells on the borders of the image may be cut off and have different dimensions.offset- offset of the grid on the min border. Cell on the min border of the image will be cut off according to offset. For example, ifcellDimensions={10,10}andoffset={5,0}then the first cell will have dimensions{5,10}(assuming thatdimensionsis larger than{10,10}).
-
Grid
public Grid(Grid grid)
-
-
Method Detail
-
numDimensions
public int numDimensions()
-
getGridDimensions
public long[] getGridDimensions()
Get the number of cells in each dimension as a new long[].
-
gridDimensions
public void gridDimensions(long[] dimensions)
Write the number of cells in each dimension into the provideddimensionsarray.
-
gridDimension
public long gridDimension(int d)
Get the number of cells in dimensiond.
-
getImgDimensions
public long[] getImgDimensions()
Get the number of pixels in each dimension as a new long[]. Note, that this is the number of pixels in all cells combined, not the number of cells!
-
imgDimensions
public void imgDimensions(long[] dimensions)
Write the number of pixels in each dimension into the provideddimensionsarray. Note, that this is the number of pixels in all cells combined, not the number of cells!
-
imgDimension
public long imgDimension(int d)
Get the number of pixels in dimensiond. Note, that this is the number of pixels in all cells combined, not the number of cells!
-
getCellDimensions
public long[] getCellDimensions()
Get the number of pixels in a standard cell in each dimension as a new long[]. Cells on the borders of the image may be cut off and have different dimensions.
-
cellDimensions
public void cellDimensions(long[] dimensions)
Write the number of pixels in a standard cell in each dimension into the provideddimensionsarray. Cells on the max borders of the image may be cut off and have different dimensions.
-
cellDimension
public long cellDimension(int d)
Get the number of pixels in a standard cell in dimensiond. Cells on the borders of the image may be cut off and have different dimensions.
-
getCellDimensions
public void getCellDimensions(long index, long[] cellMin, long[] cellDims)From the index of a cell in the grid, compute the image position of the first pixel of the cell (the offset of the cell in image coordinates) and the dimensions of the cell. The dimensions will be the standardcellDimensionsunless the cell is at the border of the image in which case it might be truncated.Note, that this method assumes that the cell grid has flat iteration order. It this is not the case, use
getCellDimensions(long[], long[], long[]).- Parameters:
index- flattened grid coordinates of the cell.cellMin- offset of the cell in image coordinates are written here.cellDims- dimensions of the cell are written here.
-
getCellDimensions
public void getCellDimensions(long[] cellGridPosition, long[] cellMin, long[] cellDims)From the position of a cell in the grid, compute the image position of the first pixel of the cell (the offset of the cell in image coordinates) and the dimensions of the cell. The dimensions will be the standardcellDimensionsunless the cell is at the border of the image in which case it might be truncated.- Parameters:
cellGridPosition- grid coordinates of the cell.cellMin- offset of the cell in image coordinates are written here.cellDims- dimensions of the cell are written here.
-
getCellInterval
public void getCellInterval(long[] cellGridPosition, long[] cellMin, long[] cellMax)
-
getCellDimension
public long getCellDimension(int d, long cellGridPosition)From the position of a cell in the grid, compute the size of the cell in dimensiond. The size will be the standardcellDimensionsunless the cell is at the border of the image in which case it might be truncated.- Parameters:
d- dimension indexcellGridPosition- grid coordinates of the cell in dimensiond.- Returns:
- size of the cell in dimension
d.
-
getCellMin
public long getCellMin(int d, long cellGridPosition)From the position of a cell in the grid, compute the image position in dimensiondof the first pixel of the cell (the offset of the cell in image coordinates).- Parameters:
d- dimension indexcellGridPosition- grid coordinates of the cell in dimensiond.- Returns:
- offset of the cell in dimension
d(in image coordinates).
-
getCellGridPositionFlat
public void getCellGridPositionFlat(long index, long[] cellGridPosition)From the flattened index of a cell in the grid, compute the position of a cell in the grid.- Parameters:
index- flattened grid coordinates of the cell.cellGridPosition- grid coordinates of the cell are written here.
-
getCellPosition
public void getCellPosition(long[] position, long[] cellPos)Get the grid position of the cell containing the element atposition.- Parameters:
position- position of an element in the image.cellPos- is set to the grid position of the cell containing the element.
-
getCellPosition
public void getCellPosition(long[] position, Positionable cellPos)Get the grid position of the cell containing the element atposition.- Parameters:
position- position of an element in the image.cellPos- is set to the grid position of the cell containing the element.
-
hashCode
public int hashCode()
- Overrides:
hashCodein classjava.lang.Object
-
equals
public boolean equals(java.lang.Object obj)
- Overrides:
equalsin classjava.lang.Object
-
toString
public java.lang.String toString()
- Overrides:
toStringin classjava.lang.Object
-
cellIntervals
public Grid.CellIntervals cellIntervals()
-
-