Revision 2674

View differences:

trunk/extensions/extWCS/src/com/iver/cit/gvsig/gui/Panels/PropertiesWCSDialog.java
388 388
	 * was not selected.
389 389
	 */
390 390
	public boolean processBandPanel(){
391
		if(this.getTab().getSelectedComponent() == this.getBandSetup()){
391
		fLayer.getWCSAdaptor().setBandR(getAssignedBand(GeoRasterFile.RED_BAND));
392
		fLayer.getWCSAdaptor().setBandG(getAssignedBand(GeoRasterFile.GREEN_BAND));
393
		fLayer.getWCSAdaptor().setBandB(getAssignedBand(GeoRasterFile.BLUE_BAND));
394
		rasterStatus.bandR = getAssignedBand(GeoRasterFile.RED_BAND);
395
		rasterStatus.bandG = getAssignedBand(GeoRasterFile.GREEN_BAND);
396
		rasterStatus.bandB = getAssignedBand(GeoRasterFile.BLUE_BAND);
392 397
			
393
			fLayer.getWCSAdaptor().setBandR(getAssignedBand(GeoRasterFile.RED_BAND));
394
			fLayer.getWCSAdaptor().setBandG(getAssignedBand(GeoRasterFile.GREEN_BAND));
395
			fLayer.getWCSAdaptor().setBandB(getAssignedBand(GeoRasterFile.BLUE_BAND));
396
			rasterStatus.bandR = getAssignedBand(GeoRasterFile.RED_BAND);
397
			rasterStatus.bandG = getAssignedBand(GeoRasterFile.GREEN_BAND);
398
			rasterStatus.bandB = getAssignedBand(GeoRasterFile.BLUE_BAND);
398
		//Comprobamos si hay alguna banda que no est? asignada y aplicamos el filtro
399
		StringBuffer sb = new StringBuffer();
400
		if(getAssignedBand(GeoRasterFile.RED_BAND) == -1)
401
			sb.append("R");
402
		if(getAssignedBand(GeoRasterFile.GREEN_BAND) == -1)
403
			sb.append("G");
404
		if(getAssignedBand(GeoRasterFile.BLUE_BAND) == -1)
405
			sb.append("B");
399 406
			
400
			//Comprobamos si hay alguna banda que no est? asignada y aplicamos el filtro
401
			StringBuffer sb = new StringBuffer();
402
			if(getAssignedBand(GeoRasterFile.RED_BAND) == -1)
403
				sb.append("R");
404
			if(getAssignedBand(GeoRasterFile.GREEN_BAND) == -1)
405
				sb.append("G");
406
			if(getAssignedBand(GeoRasterFile.BLUE_BAND) == -1)
407
				sb.append("B");
407
		if(!sb.toString().equals(""))
408
			stackManager.addRemoveBands(sb.toString());
409
		else
410
			stackManager.removeFilter(stackManager.getTypeFilter("removebands"));
408 411
			
409
			if(!sb.toString().equals(""))
410
				stackManager.addRemoveBands(sb.toString());
411
			else
412
				stackManager.removeFilter(stackManager.getTypeFilter("removebands"));
413
			
414
			fLayer.getFMap().invalidate();
415
			return true;
416
		}
417
		return false;
412
		fLayer.getFMap().invalidate();
413
		return true;
418 414
	}
419 415
	
420 416
	/**
......
423 419
	 * was not selected.
424 420
	 */
425 421
	public boolean processTransparencyPanel(){
426

  
427
		if(this.getTab().getSelectedComponent() == this.getTransparencyPanel()){
428
			
429
			//OPACIDAD
430
			String sOpac = this.getTransparencyPanel().getOpacityText().getText();
431
			if(!sOpac.equals("") && this.getTransparencyPanel().getOpacityCheck().isSelected()){
432
				int opac = Integer.parseInt(sOpac);
433
				opac = (int)((opac*255)/100);
434
				px.setTransparency(true);
435
				//px.setTransparency(255-opac);
436
				fLayer.getWCSAdaptor().setTransparency(255-opac);
437
				rasterStatus.transparency = 255-opac;
438
			}else{
439
				px.setTransparency(false);
440
				fLayer.getWCSAdaptor().setTransparency(0);
441
				rasterStatus.transparency = 0;
442
			}
443
				
444
			//TRANSPARENCIA
445
			if(	this.getTransparencyPanel().getTransparencyCheck().isSelected()){
446
				this.checkTransparencyValues();
447
				stackManager.addTransparencyFilter(	this.getRangeRed(),
448
														this.getRangeGreen(),
449
														this.getRangeBlue(),
450
														0x10,	//Transparencia
451
														0xff,	//Color Transparencia R
452
														0xff,	//Color Transparencia G
453
														0xff);	//Color Transparencia B
454
			}else
455
				px.filterStack.removeFilter(stackManager.getTypeFilter("transparency"));
456
			
457
			fLayer.getFMap().invalidate();
458
			return true;
422
		//OPACIDAD
423
		String sOpac = this.getTransparencyPanel().getOpacityText().getText();
424
		if(!sOpac.equals("") && this.getTransparencyPanel().getOpacityCheck().isSelected()){
425
			int opac = Integer.parseInt(sOpac);
426
			opac = (int)((opac*255)/100);
427
			px.setTransparency(true);
428
			//px.setTransparency(255-opac);
429
			fLayer.getWCSAdaptor().setTransparency(255-opac);
430
			rasterStatus.transparency = 255-opac;
431
		}else{
432
			px.setTransparency(false);
433
			fLayer.getWCSAdaptor().setTransparency(0);
434
			rasterStatus.transparency = 0;
459 435
		}
460 436
				
461
		return false;
437
		//TRANSPARENCIA
438
		if(	this.getTransparencyPanel().getTransparencyCheck().isSelected()){
439
			this.checkTransparencyValues();
440
			stackManager.addTransparencyFilter(	this.getRangeRed(),
441
													this.getRangeGreen(),
442
													this.getRangeBlue(),
443
													0x10,	//Transparencia
444
													0xff,	//Color Transparencia R
445
													0xff,	//Color Transparencia G
446
													0xff);	//Color Transparencia B
447
		}else
448
			px.filterStack.removeFilter(stackManager.getTypeFilter("transparency"));
449
			
450
		fLayer.getFMap().invalidate();
451
		return true;	
462 452
	}
463 453
	
464 454
	/**
......
467 457
	 * was not selected.
468 458
	 */
469 459
	public boolean processEnhancedPanel(){
470
		if(this.getTab().getSelectedComponent() == this.getEnhancedPanel()){
471

  
472
			//Filtro lineal seleccionado
473
			if(	this.getEnhancedPanel().getLinealDirectoRadioButton().isSelected()){
474
				if(	this.getEnhancedPanel().getRemoveCheck().isSelected() &&
475
					!this.getEnhancedPanel().getTailCheck().isSelected())
476
					stackManager.addEnhancedFilter(true);
477
				else
478
					stackManager.addEnhancedFilter(false);
479
				
480
				
481
				//Recorte de colas seleccionado
482
				if(this.getEnhancedPanel().getTailCheck().isSelected()){
483
					stackManager.removeFilter(stackManager.getTypeFilter("computeminmax"));
484
					double recorte = Double.parseDouble(this.getEnhancedPanel().getTailText().getText())/100;
485
					if(this.getEnhancedPanel().getRemoveCheck().isSelected())
486
						stackManager.addTailFilter( recorte, 0D, true);
487
					else
488
						stackManager.addTailFilter( recorte, 0D, false);								
489
				}else{
490
					stackManager.removeFilter(stackManager.getTypeFilter("tail"));
491
					stackManager.addComputeMinMaxFilter();
492
				}	
493
			}
494
			
495
			//Sin filtro lineal seleccionado
496
			if(this.getEnhancedPanel().getSinRealceRadioButton().isSelected()){
460
		//Filtro lineal seleccionado
461
		if(	this.getEnhancedPanel().getLinealDirectoRadioButton().isSelected()){
462
			if(	this.getEnhancedPanel().getRemoveCheck().isSelected() &&
463
				!this.getEnhancedPanel().getTailCheck().isSelected())
464
				stackManager.addEnhancedFilter(true);
465
			else
466
				stackManager.addEnhancedFilter(false);
467
							
468
			//Recorte de colas seleccionado
469
			if(this.getEnhancedPanel().getTailCheck().isSelected()){
497 470
				stackManager.removeFilter(stackManager.getTypeFilter("computeminmax"));
471
				double recorte = Double.parseDouble(this.getEnhancedPanel().getTailText().getText())/100;
472
				if(this.getEnhancedPanel().getRemoveCheck().isSelected())
473
					stackManager.addTailFilter( recorte, 0D, true);
474
				else
475
					stackManager.addTailFilter( recorte, 0D, false);								
476
			}else{
498 477
				stackManager.removeFilter(stackManager.getTypeFilter("tail"));
499
				stackManager.removeFilter(stackManager.getTypeFilter("enhanced"));
500
			}
501
			fLayer.getFMap().invalidate();
478
				stackManager.addComputeMinMaxFilter();
479
			}	
480
		}
502 481
			
503
			return true;
482
		//Sin filtro lineal seleccionado
483
		if(this.getEnhancedPanel().getSinRealceRadioButton().isSelected()){
484
			stackManager.removeFilter(stackManager.getTypeFilter("computeminmax"));
485
			stackManager.removeFilter(stackManager.getTypeFilter("tail"));
486
			stackManager.removeFilter(stackManager.getTypeFilter("enhanced"));
504 487
		}
505
		return false;
488
		fLayer.getFMap().invalidate();
489
			
490
		return true;
506 491
	}
507 492
	
508 493
	/**

Also available in: Unified diff