Class SlicingRandomAccess<T>
java.lang.Object
net.imglib2.AbstractEuclideanSpace
net.imglib2.AbstractLocalizable
net.imglib2.view.SlicingRandomAccess<T>
- Type Parameters:
T-
- All Implemented Interfaces:
EuclideanSpace, Localizable, Positionable, RandomAccess<T>, RealLocalizable, Sampler<T>, Typed<T>
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate final intnumber of dimensions of source RandomAccess, respectively numTargetDimensions of the Slicing transform.private final RandomAccess<T> source RandomAccess.private final int[]for each component of the source vector: to which target vector component should it be taken.private final boolean[]for each component of the source vector: should the value be taken to a target vector component (false) or should it be discarded (true).private final long[]private final long[]Fields inherited from class AbstractLocalizable
positionFields inherited from class AbstractEuclideanSpace
n -
Constructor Summary
ConstructorsModifierConstructorDescription(package private)SlicingRandomAccess(RandomAccess<T> source, Slicing transformToSource) protectedSlicingRandomAccess(SlicingRandomAccess<T> randomAccess) -
Method Summary
Modifier and TypeMethodDescriptionvoidbck(int d) Move by -1 in one dimension.copy()voidfwd(int d) Move by 1 in one dimension.get()Access the actual T instance providing access to a pixel, sub-pixel or integral region value theSamplerpoints at.getType()Get an instance ofT.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 localizable) Move the element relative to its current location using anLocalizableas distance vector.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 localizable) Place the element at the same location as a givenLocalizableMethods inherited from class AbstractLocalizable
getDoublePosition, getFloatPosition, getIntPosition, getLongPosition, localize, localize, localize, localizeMethods inherited from class AbstractEuclideanSpace
numDimensionsMethods inherited from class Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface EuclideanSpace
numDimensionsMethods inherited from interface Localizable
getDoublePosition, getFloatPosition, getIntPosition, getLongPosition, localize, localize, localize, localize, positionAsLongArray, positionAsPointMethods inherited from interface RandomAccess
copyRandomAccess, setPositionAndGet, setPositionAndGet, setPositionAndGetMethods inherited from interface RealLocalizable
localize, localize, positionAsDoubleArray, positionAsRealPoint
-
Field Details
-
s
source RandomAccess. note that this is the target of the transformToSource. -
m
private final int mnumber of dimensions of source RandomAccess, respectively numTargetDimensions of the Slicing transform. -
sourceZero
private final boolean[] sourceZerofor each component of the source vector: should the value be taken to a target vector component (false) or should it be discarded (true). -
sourceComponent
private final int[] sourceComponentfor each component of the source vector: to which target vector component should it be taken. -
tmpPosition
private final long[] tmpPosition -
tmpDistance
private final long[] tmpDistance
-
-
Constructor Details
-
SlicingRandomAccess
SlicingRandomAccess(RandomAccess<T> source, Slicing transformToSource) -
SlicingRandomAccess
-
-
Method Details
-
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
Description copied from interface:PositionableMove the element relative to its current location using anLocalizableas distance vector.- Specified by:
movein interfacePositionable- Parameters:
localizable- 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
Description copied from interface:PositionablePlace the element at the same location as a givenLocalizable- Specified by:
setPositionin interfacePositionable- Parameters:
localizable- 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
-
get
-
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
- 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)
-