Revision 2311 org.gvsig.raster/branches/org.gvsig.raster_dataaccess_refactoring/org.gvsig.raster.fmap/src/main/java/org/gvsig/raster/fmap/layers/StatusLayerRaster.java

View differences:

StatusLayerRaster.java
39 39
import org.gvsig.fmap.dal.coverage.grid.RasterFilterList;
40 40
import org.gvsig.fmap.dal.coverage.grid.RasterFilterListManager;
41 41
import org.gvsig.fmap.dal.coverage.store.RasterDataStore;
42
import org.gvsig.fmap.dal.coverage.store.props.ColorInterpretation;
42 43
import org.gvsig.fmap.dal.coverage.store.props.ColorTable;
43 44
import org.gvsig.fmap.dal.coverage.store.props.Transparency;
44 45
import org.gvsig.tools.ToolsLocator;
......
83 84
	//Utilizado para la persistencia
84 85
	private boolean 				loadClass		= false;
85 86
	
86
	/* (non-Javadoc)
87
	 * @see com.iver.cit.gvsig.fmap.layers.StatusRasterInterface#setXMLEntity(com.iver.utiles.XMLEntity)
88
	 */
89 87
	public void loadFromState(PersistentState state, DefaultFLyrRaster layer)throws PersistenceException {
90 88
//		this.layer = layer;
91 89
//		//RECUPERAR PROPIEDADES
......
184 182
		state.set("filters",this.filters);
185 183
	}
186 184

  
187
	/* (non-Javadoc)
188
	 * @see com.iver.cit.gvsig.fmap.layers.StatusRasterInterface#getXMLEntity(com.iver.utiles.XMLEntity)
189
	 */
190 185
	public void setStateProperties(boolean loadClass, DefaultFLyrRaster layer) throws PersistenceException {
191 186
		this.layer = layer;
192 187
		this.loadClass = loadClass;
......
217 212
			.setClassOfItems(String.class);
218 213
	}
219 214
	
220
	/* (non-Javadoc)
221
	 * @see com.iver.cit.gvsig.fmap.layers.StatusRasterInterface#getFilters()
222
	 */
223 215
	public List<String> getFilters() {
224 216
		return this.filters;
225 217
	}
226 218
	
227
	
228
	/* (non-Javadoc)
229
	 * @see com.iver.cit.gvsig.fmap.layers.StatusRasterInterface#applyStatus(com.iver.cit.gvsig.fmap.layers.RasterFileAdapter)
230
	 */
231 219
	public void applyStatus(DefaultFLyrRaster layer) throws NotSupportedExtensionException, RasterDriverException, FilterTypeException, FileNotFoundInListException, OperationNotSupportedException, FilterManagerException, InvalidSourceException {
232 220
										
233 221
		//Eliminamos el fichero inicial y cargamos las bandas si hay para que se carguen 
......
241 229
		}
242 230
		
243 231
		//Asigna las bandas
244
		int[] renderBands = new int[]{bandR, bandG, bandB};
232
		String[] valuesCI = new String[layer.getDataStore().getBandCount()];
233
		valuesCI[bandR] = ColorInterpretation.RED_BAND;
234
		valuesCI[bandG] = ColorInterpretation.GREEN_BAND;
235
		valuesCI[bandB] = ColorInterpretation.BLUE_BAND;
236
		ColorInterpretation ci = RasterLocator.getManager().getDataStructFactory().createColorInterpretation(valuesCI);
245 237
		if(layer.getRender() != null)
246
			layer.getRender().setRenderBands(renderBands);
238
			layer.getRender().setRenderColorInterpretation(ci);
247 239
				
248 240
		//Asigna la transparencia
249 241
		Transparency transp = layer.getRender().getRenderingTransparency(); 
......
313 305
				Params params = filterList.createEmptyFilterParams();
314 306
				params.setParam("stats", ((RasterDataStore)layer.getDataStore()).getStatistics());
315 307
				params.setParam("remove", new Boolean(false));
316
				params.setParam("renderBands", layer.getRender().getRenderBands());
308
				params.setParam("renderBands", layer.getRender().getRenderColorInterpretation().buildRenderBands());
317 309
				params.setParam("stretchs", null);//coge el LinearStretchParams por defecto
318 310
				enhancementManager.addFilter(params);
319 311
			}
320 312
		}
321 313
	}
322 314
	
323
	/*
324
	 * (non-Javadoc)
325
	 * @see org.gvsig.fmap.raster.layers.IStatusRaster#getRenderBands()
326
	 */
327 315
	public int[] getRenderBands() {
328 316
		return new int[]{bandR, bandG, bandB};
329 317
	}
330 318
	
331
	/*
332
	 * (non-Javadoc)
333
	 * @see org.gvsig.fmap.raster.layers.IStatusRaster#getFilterList()
334
	 */
335 319
	public RasterFilterList getFilterList() throws FilterTypeException {
336 320
		RasterManager rManager = RasterLocator.getManager();
337 321
		try {
......
348 332
		}
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