Package net.imglib2.view
Class StackView.DefaultRA<T>
- java.lang.Object
-
- net.imglib2.view.StackView.DefaultRA<T>
-
- Type Parameters:
T- the pixel type
- All Implemented Interfaces:
EuclideanSpace,Localizable,Positionable,RandomAccess<T>,RealLocalizable,Sampler<T>,Typed<T>
public static final class StackView.DefaultRA<T> extends java.lang.Object implements RandomAccess<T>
ARandomAccesson aStackView. It keeps a list ofRandomAccesses on all constituent hyper-slices of theStackView.When changing any dimension of the position, except the (n+1)th, this position change is applied to the active slice
RandomAccess. When changing the (n+1)th dimension of the position, a new sliceRandomAccessbecomes active is set to the position of the previously active sliceRandomAccess.
-
-
Field Summary
Fields Modifier and Type Field Description private intnprivate intsdprivate intsliceprivate RandomAccess<T>sliceAccessprivate RandomAccess<T>[]sliceAccessesprivate int[]tmpIntprivate long[]tmpLong
-
Constructor Summary
Constructors Modifier Constructor Description DefaultRA(RandomAccessibleInterval<T>[] slices)DefaultRA(RandomAccessibleInterval<T>[] slices, Interval interval)privateDefaultRA(StackView.DefaultRA<T> a)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidbck(int d)Move by -1 in one dimension.StackView.DefaultRA<T>copy()voidfwd(int d)Move by 1 in one dimension.Tget()Access the actual T instance providing access to a pixel, sub-pixel or integral region value theSamplerpoints at.doublegetDoublePosition(int d)Return the current position in a given dimension.floatgetFloatPosition(int d)Return the current position in a given dimension.intgetIntPosition(int d)Return the current position in a given dimension.longgetLongPosition(int d)Return the current position in a given dimension.TgetType()Get an instance ofT.voidlocalize(double[] position)Write the current position into the passed array.voidlocalize(float[] position)Write the current position into the passed array.voidlocalize(int[] position)Write the current position into the passed array.voidlocalize(long[] position)Write the current position into the passed array.voidmove(int[] distance)Move the element relative to its current location using an int[] as distance vector.voidmove(int distance, int d)Move the element in one dimension for some distance.voidmove(long[] distance)Move the element relative to its current location using a long[] as distance vector.voidmove(long distance, int d)Move the element in one dimension for some distance.voidmove(Localizable distance)Move the element relative to its current location using anLocalizableas distance vector.intnumDimensions()Gets the space's number of dimensions.voidsetPosition(int[] position)Set the position of the element.voidsetPosition(int position, int d)Set the position of the element for one dimension.voidsetPosition(long[] position)Set the position of the element.voidsetPosition(long position, int d)Set the position of the element for one dimension.voidsetPosition(Localizable position)Place the element at the same location as a givenLocalizableprivate voidsetSlice(int i)private voidsetSlice(long i)-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface net.imglib2.Localizable
localize, localize, positionAsLongArray, positionAsPoint
-
Methods inherited from interface net.imglib2.RandomAccess
copyRandomAccess, setPositionAndGet, setPositionAndGet, setPositionAndGet
-
Methods inherited from interface net.imglib2.RealLocalizable
positionAsDoubleArray, positionAsRealPoint
-
-
-
-
Field Detail
-
n
private final int n
-
sd
private final int sd
-
slice
private int slice
-
tmpLong
private final long[] tmpLong
-
tmpInt
private final int[] tmpInt
-
sliceAccesses
private final RandomAccess<T>[] sliceAccesses
-
sliceAccess
private RandomAccess<T> sliceAccess
-
-
Constructor Detail
-
DefaultRA
public DefaultRA(RandomAccessibleInterval<T>[] slices)
-
DefaultRA
public DefaultRA(RandomAccessibleInterval<T>[] slices, Interval interval)
-
DefaultRA
private DefaultRA(StackView.DefaultRA<T> a)
-
-
Method Detail
-
localize
public void localize(int[] position)
Description copied from interface:LocalizableWrite the current position into the passed array.- Specified by:
localizein interfaceLocalizable- Parameters:
position- receives current position, length must be ≥EuclideanSpace.numDimensions()
-
localize
public void localize(long[] position)
Description copied from interface:LocalizableWrite the current position into the passed array.- Specified by:
localizein interfaceLocalizable- Parameters:
position- receives current position, length must be ≥EuclideanSpace.numDimensions()
-
getIntPosition
public int getIntPosition(int d)
Description copied from interface:LocalizableReturn the current position in a given dimension.- Specified by:
getIntPositionin interfaceLocalizable- Parameters:
d- dimension- Returns:
- dimension of current position
-
getLongPosition
public long getLongPosition(int d)
Description copied from interface:LocalizableReturn the current position in a given dimension.- Specified by:
getLongPositionin interfaceLocalizable- Parameters:
d- dimension- Returns:
- dimension of current position
-
localize
public void localize(float[] position)
Description copied from interface:RealLocalizableWrite the current position into the passed array.- Specified by:
localizein interfaceRealLocalizable- Parameters:
position- receives current position, length must be ≥EuclideanSpace.numDimensions()
-
localize
public void localize(double[] position)
Description copied from interface:RealLocalizableWrite the current position into the passed array.- Specified by:
localizein interfaceRealLocalizable- Parameters:
position- receives current position, length must be ≥EuclideanSpace.numDimensions()
-
getFloatPosition
public float getFloatPosition(int d)
Description copied from interface:RealLocalizableReturn the current position in a given dimension.- Specified by:
getFloatPositionin interfaceLocalizable- Specified by:
getFloatPositionin interfaceRealLocalizable- Parameters:
d- dimension- Returns:
- dimension of current position
-
getDoublePosition
public double getDoublePosition(int d)
Description copied from interface:RealLocalizableReturn the current position in a given dimension.- Specified by:
getDoublePositionin interfaceLocalizable- Specified by:
getDoublePositionin interfaceRealLocalizable- Parameters:
d- dimension- Returns:
- dimension of current position
-
numDimensions
public int numDimensions()
Description copied from interface:EuclideanSpaceGets the space's number of dimensions.- Specified by:
numDimensionsin interfaceEuclideanSpace
-
fwd
public void fwd(int d)
Description copied from interface:PositionableMove by 1 in one dimension.- Specified by:
fwdin interfacePositionable- Parameters:
d- dimension
-
bck
public void bck(int d)
Description copied from interface:PositionableMove by -1 in one dimension.- Specified by:
bckin interfacePositionable- Parameters:
d- dimension
-
move
public void move(int distance, int d)Description copied from interface:PositionableMove the element in one dimension for some distance.- Specified by:
movein interfacePositionable- Parameters:
distance- relative offset in dimension dd- dimension
-
move
public void move(long distance, int d)Description copied from interface:PositionableMove the element in one dimension for some distance.- Specified by:
movein interfacePositionable- Parameters:
distance- relative offset in dimension dd- dimension
-
move
public void move(Localizable distance)
Description copied from interface:PositionableMove the element relative to its current location using anLocalizableas distance vector.- Specified by:
movein interfacePositionable- Parameters:
distance- relative offset,EuclideanSpace.numDimensions()must be ≥EuclideanSpace.numDimensions()
-
move
public void move(int[] distance)
Description copied from interface:PositionableMove the element relative to its current location using an int[] as distance vector.- Specified by:
movein interfacePositionable- Parameters:
distance- relative offset, length must be ≥EuclideanSpace.numDimensions()
-
move
public void move(long[] distance)
Description copied from interface:PositionableMove the element relative to its current location using a long[] as distance vector.- Specified by:
movein interfacePositionable- Parameters:
distance- relative offset, length must be ≥EuclideanSpace.numDimensions()
-
setPosition
public void setPosition(Localizable position)
Description copied from interface:PositionablePlace the element at the same location as a givenLocalizable- Specified by:
setPositionin interfacePositionable- Parameters:
position- absolute position,EuclideanSpace.numDimensions()must be ≥EuclideanSpace.numDimensions()
-
setPosition
public void setPosition(int[] position)
Description copied from interface:PositionableSet the position of the element.- Specified by:
setPositionin interfacePositionable- Parameters:
position- absolute position, length must be ≥EuclideanSpace.numDimensions()
-
setPosition
public void setPosition(long[] position)
Description copied from interface:PositionableSet the position of the element.- Specified by:
setPositionin interfacePositionable- Parameters:
position- absolute position, length must be ≥EuclideanSpace.numDimensions()
-
setPosition
public void setPosition(int position, int d)Description copied from interface:PositionableSet the position of the element for one dimension.- Specified by:
setPositionin interfacePositionable- Parameters:
position- absolute position in dimension dd- dimension
-
setPosition
public void setPosition(long position, int d)Description copied from interface:PositionableSet the position of the element for one dimension.- Specified by:
setPositionin interfacePositionable- Parameters:
position- absolute position in dimension dd- dimension
-
setSlice
private void setSlice(int i)
-
setSlice
private void setSlice(long i)
-
get
public T get()
Description copied from interface:SamplerAccess the actual T instance providing access to a pixel, sub-pixel or integral region value theSamplerpoints at.
-
getType
public T getType()
Description copied from interface:TypedGet an instance ofT.It should not be assumed that the returned
Tinstance is an independent copy. In particular, repeated calls togetType()may return the same instance.
-
copy
public StackView.DefaultRA<T> copy()
- Specified by:
copyin interfaceRandomAccess<T>- Specified by:
copyin interfaceSampler<T>- Returns:
- - A new
Samplerin the same state accessing the same values. It does NOT copy T, just the state of theSampler. 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 anArrayCursorfor example)
-
-