/** * Implemented as specified by {@link PixelBuffer} I/F. * @see PixelBuffer#getCol(Integer, Integer, Integer, Integer) */ public PixelData getCol(Integer x, Integer z, Integer c, Integer t) throws IOException, DimensionsOutOfBoundsException { //Dimension check in plane. PixelData plane = getPlane(z, c, t); Integer sizeY = getSizeY(); Integer sizeX = getSizeX(); Integer colSize = getColSize(); ByteBuffer buf = ByteBuffer.wrap(new byte[colSize]); PixelData column = new PixelData(pixels.getPixelsType().getValue(), buf); int offset; double value; for (int i = 0; i < sizeY; i++) { offset = (i * sizeX) + x; value = plane.getPixelValue(offset); column.setPixelValue(i, value); } plane.dispose(); return column; }