public AffineGet getInverseTransform(){ return transform.inverse(); } public RealInterval getBoundingBox(){ return boundingBox; }
@Override public void transformChanged( final AffineTransform3D transform ) { if ( !active ) { return; } liveTransform.set( transform ); liveTransform.preConcatenate( frozenTransform.inverse() ); for ( final TransformedSource< ? > source : sourcesToFix ) source.setIncrementalTransform( liveTransform.inverse() ); }
public void addTile(int id, double[] shift) { AffineTransform3D t = new AffineTransform3D(); t.translate( shift ); tileTransforms.put( id, t.copy().inverse() ); }
public TransformedRasteredRealRandomAccess( final RealRandomAccessible< T > realRandomAccessible, final T zero, final AffineTransform3D transform, final int[] offset ) { super( realRandomAccessible.numDimensions() ); this.zero = zero; this.realRandomAccessible = realRandomAccessible; this.transform = transform; this.offset = new int[ offset.length ]; for ( int d = 0; d < n; ++d ) this.offset[ d ] = offset[ d ]; this.realRandomAccess = realRandomAccessible.realRandomAccess(); final double[] imatrix = transform.inverse().getRowPackedCopy(); this.i00 = imatrix[ 0 ]; this.i01 = imatrix[ 1 ]; this.i02 = imatrix[ 2 ]; this.i03 = imatrix[ 3 ]; this.i10 = imatrix[ 4 ]; this.i11 = imatrix[ 5 ]; this.i12 = imatrix[ 6 ]; this.i13 = imatrix[ 7 ]; this.i20 = imatrix[ 8 ]; this.i21 = imatrix[ 9 ]; this.i22 = imatrix[ 10 ]; this.i23 = imatrix[ 11 ]; this.tmp = new float[ n ]; }
viewRegistration.preconcatenateTransform( vt ); double[] translation = sb.tileTransforms.get( tile ).inverse().getTranslation(); for (int i = 0; i < translation.length; i++) translation[i] *= relativeTileError;
res.preConcatenate( translateToCenter.inverse() );
applied = applied.inverse();
final AffineTransform3D transform = transformIn.inverse();