Statistics
| Revision:

gvsig-raster / org.gvsig.raster / branches / org.gvsig.raster.2.4 / org.gvsig.raster / org.gvsig.raster.lib / org.gvsig.raster.lib.buffer / org.gvsig.raster.lib.buffer.impl / src / main / java / org / gvsig / raster / lib / buffer / impl / ClippedBandDouble.java @ 5750

History | View | Annotate | Download (1.17 KB)

1
package org.gvsig.raster.lib.buffer.impl;
2

    
3
import org.gvsig.raster.lib.buffer.api.Band;
4
import org.gvsig.raster.lib.buffer.api.Band.BandDouble;
5
import org.gvsig.raster.lib.buffer.api.Buffer;
6

    
7

    
8
/**
9
 * @author fdiaz
10
 *
11
 */
12
public class ClippedBandDouble extends AbstractClippedBand implements BandDouble{
13

    
14
    /**
15
     * @param buffer
16
     * @param band
17
     */
18
    public ClippedBandDouble(Buffer buffer, Band band) {
19
        super(buffer, band);
20
    }
21

    
22
    @Override
23
    public double[] createRowBuffer() {
24
        return new double[getColumns()];
25
    }
26

    
27
    @Override
28
    public void fetchRow(int row, Object rowBuffer) {
29
        int bandRow = row + this.clippedBuffer.getFirstRow();
30
        Object auxRowBuffer = this.band.createRowBuffer();
31
        this.band.fetchRow(bandRow, auxRowBuffer);
32

    
33
        System.arraycopy(auxRowBuffer, this.clippedBuffer.getFirstColumn(), (double[]) rowBuffer, 0, Math.min(getColumns(), this.band.getColumns()));
34
    }
35

    
36
    @Override
37
    public double getValue(int row, int column) {
38
        return (double) this.get(row, column);
39
    }
40

    
41
    @Override
42
    public void setValue(int row, int column, double value) {
43
        this.set(row, column, value);
44
    }
45
}