public class ExplicitInvertibleRealTransform extends Object implements InvertibleRealTransform
InvertibleRealTransform
for which the forward and inverse
transforms are explicitly given as RealTransform
s. Consistency is not
internally enforced.Constructor and Description |
---|
ExplicitInvertibleRealTransform(RealTransform forwardTransform,
RealTransform inverseTransform)
Creates a new ExplicitInvertibleRealTransform.
|
Modifier and Type | Method and Description |
---|---|
void |
apply(double[] source,
double[] target)
Apply the
RealTransform to a source vector to obtain a target
vector. |
void |
apply(RealLocalizable source,
RealPositionable target)
|
void |
applyInverse(double[] source,
double[] target)
Apply the inverse transform to a target vector to obtain a source vector.
|
void |
applyInverse(RealPositionable source,
RealLocalizable target)
Apply the inverse transform to a target
RealLocalizable to obtain
a source RealPositionable . |
InvertibleRealTransform |
copy()
Create a deep copy of this
RealTransform . |
ExplicitInvertibleRealTransform |
inverse()
Get the inverse transform.
|
int |
numSourceDimensions()
Returns n, the minimal number of dimension of the source vector.
|
int |
numTargetDimensions()
Returns m, the minimal dimension of the target vector.
|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
applyInverse
apply, isIdentity
public ExplicitInvertibleRealTransform(RealTransform forwardTransform, RealTransform inverseTransform)
forwardTransform
- the transform defining the forward directioninverseTransform
- the transform defining the inverse directionpublic int numSourceDimensions()
RealTransform
numSourceDimensions
in interface RealTransform
public int numTargetDimensions()
RealTransform
numTargetDimensions
in interface RealTransform
public void apply(double[] source, double[] target)
RealTransform
RealTransform
to a source vector to obtain a target
vector.apply
in interface RealTransform
source
- source coordinates, length must be >=
RealTransform.numSourceDimensions()
target
- set this to the target coordinates, length must be >=
RealTransform.numTargetDimensions()
public void apply(RealLocalizable source, RealPositionable target)
RealTransform
apply
in interface RealTransform
source
- source coordinates, numDimensions()
must be >=
RealTransform.numSourceDimensions()
target
- set this to the target coordinates,
numDimensions()
must
be >=
RealTransform.numTargetDimensions()
public void applyInverse(double[] source, double[] target)
InvertibleRealTransform
applyInverse
in interface InvertibleRealTransform
source
- set this to the source coordinates.target
- target coordinates.public void applyInverse(RealPositionable source, RealLocalizable target)
InvertibleRealTransform
RealLocalizable
to obtain
a source RealPositionable
.applyInverse
in interface InvertibleRealTransform
source
- set this to the source coordinates.target
- target coordinates.public ExplicitInvertibleRealTransform inverse()
InvertibleRealTransform
inverse
in interface InvertibleRealTransform
public InvertibleRealTransform copy()
RealTransform
RealTransform
.
Deep copying is required to make sure that stateful RealTransforms
can be duplicated for concurrent code.
copy
in interface InvertibleRealTransform
copy
in interface RealTransform
Copyright © 2015–2022 ImgLib2. All rights reserved.