protected AbstractAffineTransform( final Matrix a, final double[] t ) { assert a.getRowDimension() == t.length && a.getColumnDimension() == t.length: "The passed arrays must be n*n and the t-vector n."; this.n = t.length; this.a = a; this.t = t; this.tmp = new double[ n ]; ds = new RealPoint[ n ]; for ( int r = 0; r < n; ++r ) ds[ r ] = new RealPoint( n ); updateDs(); }
public AbstractAffineTransform( final Matrix matrix ) { assert matrix.getRowDimension() == matrix.getColumnDimension() - 1: "The passed affine matrix must be of the format (n-1)*n."; n = matrix.getRowDimension(); a = new Matrix( n, n ); t = new double[ n ]; tmp = new double[ n ]; ds = new RealPoint[ n ]; a.setMatrix( 0, n - 1, 0, n - 1, matrix ); for ( int r = 0; r < n; ++r ) { t[ r ] = matrix.get( r, n ); ds[ r ] = new RealPoint( n ); } updateDs(); }