Revision 2438 org.gvsig.raster/trunk/org.gvsig.raster/org.gvsig.raster.fmap/src/main/java/org/gvsig/raster/fmap/layers/StatusLayerRaster.java
StatusLayerRaster.java | ||
---|---|---|
25 | 25 |
import java.util.List; |
26 | 26 |
|
27 | 27 |
import org.gvsig.fmap.dal.coverage.RasterLocator; |
28 |
import org.gvsig.fmap.dal.coverage.RasterManager; |
|
29 |
import org.gvsig.fmap.dal.coverage.dataset.Buffer; |
|
30 | 28 |
import org.gvsig.fmap.dal.coverage.datastruct.Params; |
31 | 29 |
import org.gvsig.fmap.dal.coverage.datastruct.TransparencyRange; |
32 | 30 |
import org.gvsig.fmap.dal.coverage.exception.FileNotFoundInListException; |
... | ... | |
39 | 37 |
import org.gvsig.fmap.dal.coverage.grid.RasterFilterList; |
40 | 38 |
import org.gvsig.fmap.dal.coverage.grid.RasterFilterListManager; |
41 | 39 |
import org.gvsig.fmap.dal.coverage.store.RasterDataStore; |
40 |
import org.gvsig.fmap.dal.coverage.store.props.ColorInterpretation; |
|
42 | 41 |
import org.gvsig.fmap.dal.coverage.store.props.ColorTable; |
43 | 42 |
import org.gvsig.fmap.dal.coverage.store.props.Transparency; |
44 | 43 |
import org.gvsig.tools.ToolsLocator; |
... | ... | |
55 | 54 |
* un xml y recuperadas por la capa a trav?s de las funciones setXMLEntity y |
56 | 55 |
* getXMLEntity |
57 | 56 |
* |
57 |
* @deprecated |
|
58 | 58 |
* @author Nacho Brodin (nachobrodin@gmail.com) |
59 | 59 |
*/ |
60 | 60 |
public class StatusLayerRaster implements IStatusRaster { |
... | ... | |
83 | 83 |
//Utilizado para la persistencia |
84 | 84 |
private boolean loadClass = false; |
85 | 85 |
|
86 |
/* (non-Javadoc) |
|
87 |
* @see com.iver.cit.gvsig.fmap.layers.StatusRasterInterface#setXMLEntity(com.iver.utiles.XMLEntity) |
|
88 |
*/ |
|
89 | 86 |
public void loadFromState(PersistentState state, DefaultFLyrRaster layer)throws PersistenceException { |
90 | 87 |
// this.layer = layer; |
91 | 88 |
// //RECUPERAR PROPIEDADES |
... | ... | |
184 | 181 |
state.set("filters",this.filters); |
185 | 182 |
} |
186 | 183 |
|
187 |
/* (non-Javadoc) |
|
188 |
* @see com.iver.cit.gvsig.fmap.layers.StatusRasterInterface#getXMLEntity(com.iver.utiles.XMLEntity) |
|
189 |
*/ |
|
190 | 184 |
public void setStateProperties(boolean loadClass, DefaultFLyrRaster layer) throws PersistenceException { |
191 | 185 |
this.layer = layer; |
192 | 186 |
this.loadClass = loadClass; |
... | ... | |
217 | 211 |
.setClassOfItems(String.class); |
218 | 212 |
} |
219 | 213 |
|
220 |
/* (non-Javadoc) |
|
221 |
* @see com.iver.cit.gvsig.fmap.layers.StatusRasterInterface#getFilters() |
|
222 |
*/ |
|
223 | 214 |
public List<String> getFilters() { |
224 | 215 |
return this.filters; |
225 | 216 |
} |
226 | 217 |
|
227 |
|
|
228 |
/* (non-Javadoc) |
|
229 |
* @see com.iver.cit.gvsig.fmap.layers.StatusRasterInterface#applyStatus(com.iver.cit.gvsig.fmap.layers.RasterFileAdapter) |
|
230 |
*/ |
|
231 | 218 |
public void applyStatus(DefaultFLyrRaster layer) throws NotSupportedExtensionException, RasterDriverException, FilterTypeException, FileNotFoundInListException, OperationNotSupportedException, FilterManagerException, InvalidSourceException { |
232 | 219 |
|
233 | 220 |
//Eliminamos el fichero inicial y cargamos las bandas si hay para que se carguen |
... | ... | |
241 | 228 |
} |
242 | 229 |
|
243 | 230 |
//Asigna las bandas |
244 |
int[] renderBands = new int[]{bandR, bandG, bandB}; |
|
231 |
String[] valuesCI = new String[layer.getDataStore().getBandCount()]; |
|
232 |
valuesCI[bandR] = ColorInterpretation.RED_BAND; |
|
233 |
valuesCI[bandG] = ColorInterpretation.GREEN_BAND; |
|
234 |
valuesCI[bandB] = ColorInterpretation.BLUE_BAND; |
|
235 |
ColorInterpretation ci = RasterLocator.getManager().getDataStructFactory().createColorInterpretation(valuesCI); |
|
245 | 236 |
if(layer.getRender() != null) |
246 |
layer.getRender().setRenderBands(renderBands);
|
|
237 |
layer.getRender().setRenderColorInterpretation(ci);
|
|
247 | 238 |
|
248 | 239 |
//Asigna la transparencia |
249 |
Transparency transp = layer.getRender().getLastTransparency();
|
|
240 |
Transparency transp = layer.getRender().getRenderingTransparency();
|
|
250 | 241 |
if(transp != null && transparency != 255) { |
251 | 242 |
transp.setOpacity(transparency); |
252 | 243 |
transp.activeTransparency(); |
... | ... | |
265 | 256 |
} |
266 | 257 |
|
267 | 258 |
//Filtros |
268 |
if (layer.getRender().getFilterList() != null) { |
|
259 |
/*if (layer.getRender().getFilterList() != null) {
|
|
269 | 260 |
layer.getRender().getFilterList().createFilterListFromStrings((ArrayList<String>)filters); |
270 | 261 |
enhancedCompV10((ArrayList<String>)filters, layer); |
271 | 262 |
//sortFilters(layer.getRenderFilterList()); |
272 |
} |
|
263 |
}*/
|
|
273 | 264 |
|
274 | 265 |
//Refrescamos todas las vistas |
275 | 266 |
layer.getMapContext().invalidate(); |
... | ... | |
313 | 304 |
Params params = filterList.createEmptyFilterParams(); |
314 | 305 |
params.setParam("stats", ((RasterDataStore)layer.getDataStore()).getStatistics()); |
315 | 306 |
params.setParam("remove", new Boolean(false)); |
316 |
params.setParam("renderBands", layer.getRender().getRenderBands()); |
|
307 |
params.setParam("renderBands", layer.getRender().getRenderColorInterpretation().buildRenderBands());
|
|
317 | 308 |
params.setParam("stretchs", null);//coge el LinearStretchParams por defecto |
318 | 309 |
enhancementManager.addFilter(params); |
319 | 310 |
} |
320 | 311 |
} |
321 | 312 |
} |
322 | 313 |
|
323 |
/* |
|
324 |
* (non-Javadoc) |
|
325 |
* @see org.gvsig.fmap.raster.layers.IStatusRaster#getRenderBands() |
|
326 |
*/ |
|
327 | 314 |
public int[] getRenderBands() { |
328 | 315 |
return new int[]{bandR, bandG, bandB}; |
329 | 316 |
} |
330 | 317 |
|
331 |
/* |
|
332 |
* (non-Javadoc) |
|
333 |
* @see org.gvsig.fmap.raster.layers.IStatusRaster#getFilterList() |
|
334 |
*/ |
|
335 | 318 |
public RasterFilterList getFilterList() throws FilterTypeException { |
336 |
RasterManager rManager = RasterLocator.getManager(); |
|
319 |
/*RasterManager rManager = RasterLocator.getManager();
|
|
337 | 320 |
try { |
338 | 321 |
RasterFilterList filterList = layer.getRender().getFilterList(); |
339 | 322 |
if(filterList != null) |
... | ... | |
345 | 328 |
return filterList; |
346 | 329 |
} catch (NullPointerException e) { |
347 | 330 |
return null; |
348 |
} |
|
331 |
}*/ |
|
332 |
return null; |
|
349 | 333 |
} |
350 | 334 |
|
351 |
/* |
|
352 |
* (non-Javadoc) |
|
353 |
* @see org.gvsig.fmap.raster.layers.IStatusRaster#getColorTable() |
|
354 |
*/ |
|
355 | 335 |
public ColorTable getColorTable() throws FilterTypeException { |
356 | 336 |
return layer.getRender().getColorTable(); |
357 | 337 |
} |
358 | 338 |
|
359 |
/* |
|
360 |
* (non-Javadoc) |
|
361 |
* @see org.gvsig.fmap.raster.layers.IStatusRaster#getFilterArguments() |
|
362 |
*/ |
|
363 | 339 |
public List<String> getFilterArguments() { |
364 | 340 |
return filters; |
365 | 341 |
} |
Also available in: Unified diff