Revision 12749 trunk/libraries/libRaster/src/org/gvsig/raster/dataset/io/MemoryRasterDriver.java

View differences:

MemoryRasterDriver.java
239 239
		if(end.getX() > buffer.getWidth())
240 240
			begin.setLocation(buffer.getWidth(), begin.getY());
241 241
	}
242

  
243
	/*
244
	 * (non-Javadoc)
245
	 * @see org.gvsig.raster.dataset.RasterDataset#getWindowRaster(double, double, double, double, org.gvsig.raster.dataset.BandList, org.gvsig.raster.dataset.IBuffer)
246
	 */
247
	public IBuffer getWindowRaster(double ulx, double uly, double lrx, double lry, BandList bandList, IBuffer rasterBuf) {
248
		Point2D begin = worldToRaster(new Point2D.Double(ulx, uly));
249
		Point2D end = worldToRaster(new Point2D.Double(lrx, lry));
250
		setView(new Extent(ulx, uly, lrx, lry));
251
		
252
		adjustPointsToBufferLimits(begin, end);
253
		
254
		switch(buffer.getDataType()){
255
		case IBuffer.TYPE_BYTE: writeByteBuffer(rasterBuf, 1, 1, begin, bandList); break;
256
		case IBuffer.TYPE_SHORT: writeShortBuffer(rasterBuf, 1, 1, begin, bandList); break;
257
		case IBuffer.TYPE_INT: writeIntBuffer(rasterBuf, 1, 1, begin, bandList); break;
258
		case IBuffer.TYPE_FLOAT: writeFloatBuffer(rasterBuf, 1, 1, begin, bandList); break;
259
		case IBuffer.TYPE_DOUBLE: writeDoubleBuffer(rasterBuf, 1, 1, begin, bandList); break;
260
		}
261
		return rasterBuf;
262
	}
242 263
	
243 264
	/*
244 265
	 *  (non-Javadoc)

Also available in: Unified diff