SampleModel[] inputSampleModels = { new PixelInterleavedSampleModel(DataBuffer.TYPE_BYTE, 1, 1, 1, 1, bandOffsets), new PixelInterleavedSampleModel(DataBuffer.TYPE_USHORT, 1, 1, 1, 1, bandOffsets), new PixelInterleavedSampleModel(DataBuffer.TYPE_INT, 1, 1, 1, 1, bandOffsets), new SinglePixelPackedSampleModel(DataBuffer.TYPE_BYTE,
width, height, bitMask), new SinglePixelPackedSampleModel(DataBuffer.TYPE_USHORT,
width, height, bitMask), new SinglePixelPackedSampleModel(DataBuffer.TYPE_INT,
width, height, bitMask), new MultiPixelPackedSampleModel(DataBuffer.TYPE_BYTE,
width, height, 4), new MultiPixelPackedSampleModel(DataBuffer.TYPE_USHORT,
width, height, 2), new MultiPixelPackedSampleModel(DataBuffer.TYPE_INT,
width, height, 2)
};
// --------------------------------------------------------------------- // Test ability to create Raster & WritableRaster with DataBuffer // classes // ---------------------------------------------------------------------
DataBuffer[] inputDataBuffer = { new DataBufferByte(imageSize), new DataBufferUShort(imageSize), new DataBufferInt(imageSize, 1), new DataBufferShort(imageSize), new DataBufferFloat(imageSize), new DataBufferDouble(imageSize)
};
for (SampleModel sm : inputSampleModels) { for (DataBuffer db : inputDataBuffer) { // Test Raster creation
Raster.createRaster(sm, db, location);
// --------------------------------------------------------------------- // Test ability to create Raster & WritableRaster with custom DataBuffer // classes // ---------------------------------------------------------------------
DataBuffer[] myDataBuffer = { new MyDataBufferByte(imageSize), new MyDataBufferUShort(imageSize), new MyDataBufferInt(imageSize), new MyDataBufferShort(imageSize), new MyDataBufferDouble(imageSize), new MyDataBufferFloat(imageSize)
};
for (SampleModel sm : inputSampleModels) { for (DataBuffer db : myDataBuffer) { // Test Raster creation
Raster.createRaster(sm, db, location);
public MyDataBufferUShort(int size) { super(TYPE_USHORT, size);
data = newshort[size];
bankdata = newshort[1][];
bankdata[0] = data;
}
@Override publicint getElem(int bank, int i) { return bankdata[bank][i + offsets[bank]];
}
@Override publicvoid setElem(int bank, int i, int val) {
bankdata[bank][i + offsets[bank]] = (short) val;
}
}
finalclass MyDataBufferInt extends DataBuffer {
int[] data; int[][] bankdata;
public MyDataBufferInt(int size) { super(TYPE_INT, size);
data = newint[size];
bankdata = newint[1][];
bankdata[0] = data;
}
@Override publicint getElem(int bank, int i) { return bankdata[bank][i + offsets[bank]];
}
@Override publicvoid setElem(int bank, int i, int val) {
bankdata[bank][i + offsets[bank]] = (int) val;
}
}
Messung V0.5 in Prozent
¤ Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.0.9Bemerkung:
(vorverarbeitet am 2026-06-10)
¤
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.