@Override public long getLongPosition( final int d ) { return source.getLongPosition( d ); }
/** * {@inheritDoc} */ @Override public long getLongPosition( final int d ) { assert d < n; return s.getLongPosition( sourceComponent[ d ] ); }
@Override public long getLongPosition( int d ) { return cursor.getLongPosition( d ); }
@Override public long getLongPosition( int d ) { return cursor.getLongPosition( d ); }
@Override public long getLongPosition( final int d ) { return c.getLongPosition( d ); } }
@Override public void localize( long[] position ) { for ( int d = 0; d < numPlaneDims; d++ ) { position[ d ] = cursor.getLongPosition( d ); } }
@Override public void localize( long[] position ) { for ( int d = 0; d < numPlaneDims; d++ ) { position[ d ] = cursor.getLongPosition( d ); } }
/** * {@inheritDoc} */ @Override public long getLongPosition( final int d ) { assert d < n; return s.getLongPosition( sourceComponent[ d ] ); }
@Override public long getLongPosition( final int d ) { return source.getLongPosition( d ); }
@Override public long getLongPosition(int d) { return cursor.getLongPosition(d); }
@Override public long getLongPosition(int arg0) { return cursor.getLongPosition(arg0); }
@Override public long getLongPosition(int d) { return cursor.getLongPosition(d); }
protected void mapSingle( final RandomAccess< A > sourceRandomAccess, final Converter< A, ARGBType > conv ) { final Cursor< ARGBType > targetCursor = target.localizingCursor(); while ( targetCursor.hasNext() ) { targetCursor.fwd(); sourceRandomAccess.setPosition( targetCursor.getLongPosition( 0 ), 0 ); sourceRandomAccess.setPosition( targetCursor.getLongPosition( 1 ), 1 ); conv.convert( sourceRandomAccess.get(), targetCursor.get() ); } } }
protected void mapSingle( final RandomAccess< A > sourceRandomAccess, final Converter< A, ARGBType > conv ) { final Cursor< ARGBType > targetCursor = target.localizingCursor(); while ( targetCursor.hasNext() ) { targetCursor.fwd(); sourceRandomAccess.setPosition( targetCursor.getLongPosition( 0 ), 0 ); sourceRandomAccess.setPosition( targetCursor.getLongPosition( 1 ), 1 ); conv.convert( sourceRandomAccess.get(), targetCursor.get() ); } } }
protected static long[] getMaxCoords( RandomAccessibleInterval<DoubleType> input, boolean useAbsoluteValue) { long[] dims = new long[input.numDimensions()]; double max = Double.MIN_VALUE; Cursor<DoubleType> cursor = Views.iterable(input).localizingCursor(); while (cursor.hasNext()) { cursor.fwd(); double current = useAbsoluteValue ? Math.abs(cursor.get().get()) : cursor .get().get(); if (current > max) { max = current; for (int d = 0; d < input.numDimensions(); d++) { dims[d] = cursor.getLongPosition(d); } } } return dims; }
public static < T extends RealType< T > > void subtractProjection( final RandomAccessibleInterval< T > img, final RandomAccessibleInterval< T > proj, final int projDim ) { final int n0 = img.numDimensions(); final Cursor< T > cursor = Views.iterable( img ).localizingCursor(); final RandomAccess< T > ra = proj.randomAccess(); while ( cursor.hasNext() ) { final T type = cursor.next(); int dim = 0; for ( int d = 0; d < n0; ++d ) if ( d != projDim ) ra.setPosition( cursor.getLongPosition( d ), dim++ ); type.sub( ra.get() ); } }
@Override public Img< T > compute( Img< T > op, Img< T > r ) { Cursor< T > rc = r.localizingCursor(); RandomAccess< T > opc = op.randomAccess(); while ( rc.hasNext() ) { rc.next(); for ( int d = 0; d < m_interval.numDimensions(); d++ ) { opc.setPosition( rc.getLongPosition( d ) + m_interval.min( d ), d ); } rc.get().set( opc.get() ); } return r; }
@Override public ImgPlus< T > compute( ImgPlus< T > op, ImgPlus< T > r ) { Cursor< T > rc = r.localizingCursor(); RandomAccess< T > opc = op.randomAccess(); while ( rc.hasNext() ) { rc.next(); for ( int d = 0; d < m_interval.numDimensions(); d++ ) { opc.setPosition( rc.getLongPosition( d ) + m_interval.min( d ), d ); } rc.get().set( opc.get() ); } return r; }
@Override public void run() { float ux, uy; Cursor<T> cursor = input.localizingCursor(); RandomAccess<FloatType> grad_ra = gradient.randomAccess(); RandomAccess<FloatType> J_ra = J.randomAccess(); cursor.jumpFwd(chunk.getStartPosition()); for (long k = 0; k < chunk.getLoopSize(); k++) { cursor.fwd(); for (int i = 0; i < input.numDimensions(); i++) { grad_ra.setPosition(cursor.getLongPosition(i), i); J_ra.setPosition(cursor.getLongPosition(i), i); } grad_ra.setPosition(0, newDim); ux = grad_ra.get().get(); grad_ra.fwd(newDim); uy = grad_ra.get().get(); J_ra.setPosition(0, newDim); J_ra.get().set(ux*ux); J_ra.fwd(newDim); J_ra.get().set(ux*uy); J_ra.fwd(newDim); J_ra.get().set(uy*uy); } } };
@Override public void run() { float ux, uy; final Cursor< T > cursor = input.localizingCursor(); final RandomAccess< FloatType > grad_ra = gradient.randomAccess(); final RandomAccess< FloatType > J_ra = J.randomAccess(); cursor.jumpFwd( chunk.getStartPosition() ); for ( long k = 0; k < chunk.getLoopSize(); k++ ) { cursor.fwd(); for ( int i = 0; i < input.numDimensions(); i++ ) { grad_ra.setPosition( cursor.getLongPosition( i ), i ); J_ra.setPosition( cursor.getLongPosition( i ), i ); } grad_ra.setPosition( 0, newDim ); ux = grad_ra.get().get(); grad_ra.fwd( newDim ); uy = grad_ra.get().get(); J_ra.setPosition( 0, newDim ); J_ra.get().set( ux * ux ); J_ra.fwd( newDim ); J_ra.get().set( ux * uy ); J_ra.fwd( newDim ); J_ra.get().set( uy * uy ); } } };