Revision 497 2.1/trunk/org.gvsig.view3d/org.gvsig.view3d.swing/org.gvsig.view3d.swing.impl/src/main/java/org/gvsig/view3d/swing/impl/data/DefaultRasterServer.java
DefaultRasterServer.java | ||
---|---|---|
209 | 209 |
reqParams.setValue(AVKey.PIXEL_FORMAT, AVKey.ELEVATION); |
210 | 210 |
|
211 | 211 |
if (!reqParams.hasKey(AVKey.DATA_TYPE)) { |
212 |
reqParams.setValue(AVKey.DATA_TYPE, AVKey.INT16); |
|
212 |
LOG.error("Missing requerided parameter {}", AVKey.DATA_TYPE, |
|
213 |
new IllegalArgumentException()); |
|
213 | 214 |
} |
214 |
|
|
215 |
|
|
216 |
String dataType = (String) reqParams.getValue(AVKey.DATA_TYPE); |
|
217 |
int bytesNumber = getBytesNumber(dataType); |
|
218 |
ByteBuffer byteBuffer = |
|
219 |
ByteBuffer.allocate(reqWidth * reqHeight * bytesNumber); |
|
220 |
|
|
215 | 221 |
reqRaster = |
216 |
new ByteBufferRaster(reqWidth, reqHeight, reqSector, reqParams); |
|
222 |
new ByteBufferRaster(reqWidth, reqHeight, reqSector, |
|
223 |
byteBuffer, reqParams); |
|
217 | 224 |
|
218 | 225 |
} else if (AVKey.IMAGE.equals(this.getValue(AVKey.PIXEL_FORMAT))) { |
219 | 226 |
|
... | ... | |
232 | 239 |
|
233 | 240 |
return reqRaster; |
234 | 241 |
} |
242 |
|
|
243 |
private int getBytesNumber(String dataType) { |
|
235 | 244 |
|
245 |
if (AVKey.INT8.equals(dataType)) { |
|
246 |
return 1; |
|
247 |
} else if (AVKey.INT16.equals(dataType)) { |
|
248 |
return 2; |
|
249 |
} else if (AVKey.INT32.equals(dataType) |
|
250 |
|| AVKey.FLOAT32.equals(dataType)) { |
|
251 |
return 4; |
|
252 |
} else if (AVKey.FLOAT64.equals(dataType)) { |
|
253 |
return 8; |
|
254 |
} |
|
255 |
|
|
256 |
return 1; |
|
257 |
} |
|
258 |
|
|
236 | 259 |
} |
Also available in: Unified diff