public class CellRandomAccess<T extends NativeType<T>,C extends Cell<?>> extends AbstractLocalizable implements RandomAccess<T>, AbstractCellImg.CellImgSampler<C>
RandomAccess on a AbstractCellImg.
The boundaries of the current cell are cached, so that position changes
within the same cell have minimal overhead.| Modifier and Type | Field and Description |
|---|---|
protected int[] |
cellDims |
protected long[] |
currentCellMax |
protected long[] |
currentCellMin |
protected int[] |
currentCellSteps |
protected long[] |
dimensions |
protected CellGrid |
grid |
protected int |
index
The current index of the type.
|
protected boolean |
isOutOfBounds |
protected long[] |
oobCellMax |
protected long[] |
oobCellMin |
protected RandomAccess<C> |
randomAccessOnCells |
protected T |
type |
protected Index |
typeIndex |
positionn| Modifier | Constructor and Description |
|---|---|
|
CellRandomAccess(AbstractCellImg<T,?,C,?> img) |
protected |
CellRandomAccess(CellRandomAccess<T,C> randomAccess) |
| Modifier and Type | Method and Description |
|---|---|
void |
bck(int d)
Move by -1 in one dimension.
|
CellRandomAccess<T,C> |
copy() |
CellRandomAccess<T,C> |
copyRandomAccess() |
void |
fwd(int d)
Move by 1 in one dimension.
|
T |
get()
Access the actual T instance providing access to a pixel,
sub-pixel or integral region value the
Sampler points at. |
C |
getCell() |
void |
move(int[] distance)
Move the element relative to its current location using an int[] as
distance vector.
|
void |
move(int distance,
int d)
Move the element in one dimension for some distance.
|
void |
move(Localizable localizable)
Move the element relative to its current location using an
Localizable as distance vector. |
void |
move(long[] distance)
Move the element relative to its current location using a long[] as
distance vector.
|
void |
move(long distance,
int d)
Move the element in one dimension for some distance.
|
void |
setPosition(int[] pos)
Set the position of the element.
|
void |
setPosition(int pos,
int d)
Set the position of the element for one dimension.
|
void |
setPosition(Localizable localizable)
Place the element at the same location as a given
Localizable |
void |
setPosition(long[] pos)
Set the position of the element.
|
void |
setPosition(long pos,
int d)
Set the position of the element for one dimension.
|
getDoublePosition, getFloatPosition, getIntPosition, getLongPosition, localize, localize, localize, localizenumDimensionsclone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitsetPositionAndGet, setPositionAndGet, setPositionAndGetgetDoublePosition, getFloatPosition, getIntPosition, getLongPosition, localize, localize, localize, positionAsLongArray, positionAsPointlocalize, localize, localize, positionAsDoubleArray, positionAsRealPointnumDimensionsprotected final T extends NativeType<T> type
protected final Index typeIndex
protected final CellGrid grid
protected final RandomAccess<C extends Cell<?>> randomAccessOnCells
protected final int[] cellDims
protected final long[] dimensions
protected int[] currentCellSteps
protected long[] currentCellMin
protected long[] currentCellMax
protected boolean isOutOfBounds
protected final long[] oobCellMin
protected final long[] oobCellMax
protected int index
protected CellRandomAccess(CellRandomAccess<T,C> randomAccess)
public CellRandomAccess(AbstractCellImg<T,?,C,?> img)
public C getCell()
getCell in interface AbstractCellImg.CellImgSampler<C extends Cell<?>>public T get()
SamplerSampler points at.get in interface Sampler<T extends NativeType<T>>public CellRandomAccess<T,C> copy()
copy in interface Sampler<T extends NativeType<T>>Sampler in the same state accessing the same
values.
It does NOT copy T, just the state of the Sampler.
Otherwise use T.copy() if available.
Sampler.copy().get() == Sampler.get(), i.e. both hold the same
value, not necessarily the same instance (this is the case for an
ArrayCursor for example)public CellRandomAccess<T,C> copyRandomAccess()
copyRandomAccess in interface RandomAccess<T extends NativeType<T>>public void fwd(int d)
Positionablefwd in interface Positionabled - dimensionpublic void bck(int d)
Positionablebck in interface Positionabled - dimensionpublic void move(int distance,
int d)
Positionablemove in interface Positionabledistance - relative offset in dimension dd - dimensionpublic void move(long distance,
int d)
Positionablemove in interface Positionabledistance - relative offset in dimension dd - dimensionpublic void move(Localizable localizable)
PositionableLocalizable as distance vector.move in interface Positionablelocalizable - relative offset, EuclideanSpace.numDimensions() must be
≥ EuclideanSpace.numDimensions()public void move(int[] distance)
Positionablemove in interface Positionabledistance - relative offset, length must be ≥ EuclideanSpace.numDimensions()public void move(long[] distance)
Positionablemove in interface Positionabledistance - relative offset, length must be ≥ EuclideanSpace.numDimensions()public void setPosition(int pos,
int d)
PositionablesetPosition in interface Positionablepos - absolute position in dimension dd - dimensionpublic void setPosition(long pos,
int d)
PositionablesetPosition in interface Positionablepos - absolute position in dimension dd - dimensionpublic void setPosition(Localizable localizable)
PositionableLocalizablesetPosition in interface Positionablelocalizable - absolute position, EuclideanSpace.numDimensions() must be
≥ EuclideanSpace.numDimensions()public void setPosition(int[] pos)
PositionablesetPosition in interface Positionablepos - absolute position, length must be ≥
EuclideanSpace.numDimensions()public void setPosition(long[] pos)
PositionablesetPosition in interface Positionablepos - absolute position, length must be ≥
EuclideanSpace.numDimensions()Copyright © 2015–2022 ImgLib2. All rights reserved.