@Override public PlanarCursor< T > cursor() { if ( n == 1 ) return new PlanarCursor1D< T >( this ); else if ( n == 2 ) return new PlanarCursor2D< T >( this ); else return new PlanarCursor< T >( this ); }
@Override public PlanarLocalizingCursor< T > localizingCursor() { if ( n == 1 ) return new PlanarLocalizingCursor1D< T >( this ); else if ( n == 2 ) return new PlanarLocalizingCursor2D< T >( this ); else return new PlanarLocalizingCursor< T >( this ); }
@Override public PlanarRandomAccess< T > randomAccess() { if ( n == 1 ) return new PlanarRandomAccess1D< T >( this ); return new PlanarRandomAccess< T >( this ); }
@Override public PlanarImgFactory< T > factory() { return new PlanarImgFactory<>( linkedType ); }
public PlanarLocalizingCursor( final PlanarImg< T, ? > container ) { super( container.numDimensions() ); this.type = container.createLinkedType(); this.container = container; lastIndex = ( ( n > 1 ) ? container.dimensions[ 1 ] : 1 ) * container.dimensions[ 0 ] - 1; lastSliceIndex = container.numSlices() - 1; max = new int[ n ]; for ( int d = 0; d < n; ++d ) max[ d ] = ( int ) container.max( d ); reset(); }
public PlanarCursor( final PlanarImg< T, ? > container ) { super( container.numDimensions() ); this.type = container.createLinkedType(); this.container = container; lastIndex = ( ( n > 1 ) ? container.dimensions[ 1 ] : 1 ) * container.dimensions[ 0 ] - 1; lastSliceIndex = container.numSlices() - 1; reset(); }
/** * {@inheritDoc} */ @Override public Cursor< T > cursor( final Interval interval ) { assert ( supportsOptimizedCursor( interval ) ); return new PlanarPlaneSubsetCursor< T >( this, interval ); }
/** * {@inheritDoc} */ @Override public Cursor< T > localizingCursor( final Interval interval ) { assert ( supportsOptimizedCursor( interval ) ); return new PlanarPlaneSubsetLocalizingCursor< T >( this, interval ); }
@Override public PlanarLocalizingCursor< T > copy() { return new PlanarLocalizingCursor< T >( this ); }
@Override public PlanarLocalizingCursor1D< T > copy() { return new PlanarLocalizingCursor1D< T >( this ); }
@Override public void localize( final int[] position ) { container.indexToGlobalPosition( sliceIndex, index, position ); }
public PlanarLocalizingCursor( final PlanarImg< T, ? > container ) { super( container.numDimensions() ); this.type = container.createLinkedType(); this.container = container; lastIndex = ( ( n > 1 ) ? container.dimensions[ 1 ] : 1 ) * container.dimensions[ 0 ] - 1; lastSliceIndex = container.numSlices() - 1; max = new int[ n ]; for ( int d = 0; d < n; ++d ) max[ d ] = ( int ) container.max( d ); reset(); }
public PlanarCursor( final PlanarImg< T, ? > container ) { super( container.numDimensions() ); this.type = container.createLinkedType(); this.container = container; lastIndex = ( ( n > 1 ) ? container.dimensions[ 1 ] : 1 ) * container.dimensions[ 0 ] - 1; lastSliceIndex = container.numSlices() - 1; reset(); }
@Override public PlanarCursor< T > cursor() { if ( n == 1 ) return new PlanarCursor1D< T >( this ); else if ( n == 2 ) return new PlanarCursor2D< T >( this ); else return new PlanarCursor< T >( this ); }
@Override public PlanarLocalizingCursor< T > localizingCursor() { if ( n == 1 ) return new PlanarLocalizingCursor1D< T >( this ); else if ( n == 2 ) return new PlanarLocalizingCursor2D< T >( this ); else return new PlanarLocalizingCursor< T >( this ); }
@Override public PlanarRandomAccess< T > randomAccess() { if ( n == 1 ) return new PlanarRandomAccess1D< T >( this ); return new PlanarRandomAccess< T >( this ); }
/** * {@inheritDoc} */ @Override public Cursor< T > cursor( final Interval interval ) { assert ( supportsOptimizedCursor( interval ) ); return new PlanarPlaneSubsetCursor< T >( this, interval ); }
/** * {@inheritDoc} */ @Override public Cursor< T > localizingCursor( final Interval interval ) { assert ( supportsOptimizedCursor( interval ) ); return new PlanarPlaneSubsetLocalizingCursor< T >( this, interval ); }