Revision 2654
trunk/applications/appgvSIG/src/com/iver/cit/gvsig/gui/Panels/PropertiesRasterDialog.java | ||
---|---|---|
525 | 525 |
* acci?n y false si no lo estaba. |
526 | 526 |
*/ |
527 | 527 |
public boolean processBandPanel(){ |
528 |
if(this.getTab().getSelectedComponent() == this.getBandSetup()){ |
|
529 |
fLayer.getSource().setBand(GeoRasterFile.RED_BAND,
|
|
530 |
getAssignedBand(GeoRasterFile.RED_BAND));
|
|
531 |
fLayer.getSource().setBand(GeoRasterFile.GREEN_BAND,
|
|
532 |
getAssignedBand(GeoRasterFile.GREEN_BAND));
|
|
533 |
fLayer.getSource().setBand(GeoRasterFile.BLUE_BAND,
|
|
534 |
getAssignedBand(GeoRasterFile.BLUE_BAND));
|
|
535 |
rasterStatus.bandR = getAssignedBand(GeoRasterFile.RED_BAND);
|
|
536 |
rasterStatus.bandG = getAssignedBand(GeoRasterFile.GREEN_BAND);
|
|
537 |
rasterStatus.bandB = getAssignedBand(GeoRasterFile.BLUE_BAND);
|
|
528 |
//if(this.getTab().getSelectedComponent() == this.getBandSetup()){
|
|
529 |
fLayer.getSource().setBand(GeoRasterFile.RED_BAND, |
|
530 |
getAssignedBand(GeoRasterFile.RED_BAND)); |
|
531 |
fLayer.getSource().setBand(GeoRasterFile.GREEN_BAND, |
|
532 |
getAssignedBand(GeoRasterFile.GREEN_BAND)); |
|
533 |
fLayer.getSource().setBand(GeoRasterFile.BLUE_BAND, |
|
534 |
getAssignedBand(GeoRasterFile.BLUE_BAND)); |
|
535 |
rasterStatus.bandR = getAssignedBand(GeoRasterFile.RED_BAND); |
|
536 |
rasterStatus.bandG = getAssignedBand(GeoRasterFile.GREEN_BAND); |
|
537 |
rasterStatus.bandB = getAssignedBand(GeoRasterFile.BLUE_BAND); |
|
538 | 538 |
|
539 |
//Comprobamos si hay alguna banda que no est? asignada y aplicamos el filtro
|
|
540 |
StringBuffer sb = new StringBuffer();
|
|
541 |
if(getAssignedBand(GeoRasterFile.RED_BAND) == -1)
|
|
542 |
sb.append("R");
|
|
543 |
if(getAssignedBand(GeoRasterFile.GREEN_BAND) == -1)
|
|
544 |
sb.append("G");
|
|
545 |
if(getAssignedBand(GeoRasterFile.BLUE_BAND) == -1)
|
|
546 |
sb.append("B");
|
|
539 |
//Comprobamos si hay alguna banda que no est? asignada y aplicamos el filtro |
|
540 |
StringBuffer sb = new StringBuffer(); |
|
541 |
if(getAssignedBand(GeoRasterFile.RED_BAND) == -1) |
|
542 |
sb.append("R"); |
|
543 |
if(getAssignedBand(GeoRasterFile.GREEN_BAND) == -1) |
|
544 |
sb.append("G"); |
|
545 |
if(getAssignedBand(GeoRasterFile.BLUE_BAND) == -1) |
|
546 |
sb.append("B"); |
|
547 | 547 |
|
548 |
if(!sb.toString().equals("")) |
|
549 |
stackManager.addRemoveBands(sb.toString()); |
|
550 |
else |
|
551 |
stackManager.removeFilter(stackManager.getTypeFilter("removebands")); |
|
552 |
fLayer.getFMap().invalidate(); |
|
553 |
return true; |
|
554 |
} |
|
555 |
return false; |
|
548 |
if(!sb.toString().equals("")) |
|
549 |
stackManager.addRemoveBands(sb.toString()); |
|
550 |
else |
|
551 |
stackManager.removeFilter(stackManager.getTypeFilter("removebands")); |
|
552 |
fLayer.getFMap().invalidate(); |
|
553 |
return true; |
|
556 | 554 |
} |
557 | 555 |
|
558 | 556 |
/** |
... | ... | |
562 | 560 |
* acci?n y false si no lo estaba. |
563 | 561 |
*/ |
564 | 562 |
public boolean processTransparencyPanel(){ |
565 |
|
|
566 |
if(this.getTab().getSelectedComponent() == this.getTransparencyPanel()){ |
|
567 |
|
|
568 |
//OPACIDAD |
|
569 |
String sOpac = this.getTransparencyPanel().getOpacityText().getText(); |
|
570 |
if(!sOpac.equals("") && this.getTransparencyPanel().getOpacityCheck().isSelected()){ |
|
571 |
int opac = Integer.parseInt(sOpac); |
|
572 |
opac = (int)((opac*255)/100); |
|
573 |
fLayer.getSource().setTransparency(true); |
|
574 |
fLayer.setTransparency(255-opac); |
|
575 |
rasterStatus.transparency = 255-opac; |
|
576 |
}else{ |
|
577 |
fLayer.getSource().setTransparency(false); |
|
578 |
fLayer.setTransparency(0); |
|
579 |
rasterStatus.transparency = 0; |
|
580 |
} |
|
581 |
|
|
582 |
//TRANSPARENCIA |
|
583 |
if( this.getTransparencyPanel().getTransparencyCheck().isSelected()){ |
|
584 |
this.checkTransparencyValues(); |
|
585 |
stackManager.addTransparencyFilter( this.getRangeRed(), |
|
586 |
this.getRangeGreen(), |
|
587 |
this.getRangeBlue(), |
|
588 |
0x10, //Transparencia |
|
589 |
0xff, //Color Transparencia R |
|
590 |
0xff, //Color Transparencia G |
|
591 |
0xff); //Color Transparencia B |
|
592 |
}else{ |
|
593 |
fLayer.getSource().getFilterStack().removeFilter(stackManager.getTypeFilter("transparency")); |
|
594 |
} |
|
595 |
|
|
596 |
return true; |
|
563 |
//OPACIDAD |
|
564 |
String sOpac = this.getTransparencyPanel().getOpacityText().getText(); |
|
565 |
if(!sOpac.equals("") && this.getTransparencyPanel().getOpacityCheck().isSelected()){ |
|
566 |
int opac = Integer.parseInt(sOpac); |
|
567 |
opac = (int)((opac*255)/100); |
|
568 |
fLayer.getSource().setTransparency(true); |
|
569 |
fLayer.setTransparency(255-opac); |
|
570 |
rasterStatus.transparency = 255-opac; |
|
571 |
}else{ |
|
572 |
fLayer.getSource().setTransparency(false); |
|
573 |
fLayer.setTransparency(0); |
|
574 |
rasterStatus.transparency = 0; |
|
597 | 575 |
} |
598 | 576 |
|
599 |
return false; |
|
577 |
//TRANSPARENCIA |
|
578 |
if( this.getTransparencyPanel().getTransparencyCheck().isSelected()){ |
|
579 |
this.checkTransparencyValues(); |
|
580 |
stackManager.addTransparencyFilter( this.getRangeRed(), |
|
581 |
this.getRangeGreen(), |
|
582 |
this.getRangeBlue(), |
|
583 |
0x10, //Transparencia |
|
584 |
0xff, //Color Transparencia R |
|
585 |
0xff, //Color Transparencia G |
|
586 |
0xff); //Color Transparencia B |
|
587 |
}else{ |
|
588 |
fLayer.getSource().getFilterStack().removeFilter(stackManager.getTypeFilter("transparency")); |
|
589 |
} |
|
590 |
|
|
591 |
return true; |
|
600 | 592 |
} |
601 | 593 |
|
602 | 594 |
/** |
... | ... | |
606 | 598 |
* acci?n y false si no lo estaba. |
607 | 599 |
*/ |
608 | 600 |
public boolean processEnhancedPanel(){ |
609 |
if(this.getTab().getSelectedComponent() == this.getEnhancedPanel()){ |
|
610 |
|
|
611 |
//Filtro lineal seleccionado |
|
612 |
if( this.getEnhancedPanel().getLinealDirectoRadioButton().isSelected()){ |
|
613 |
if( this.getEnhancedPanel().getRemoveCheck().isSelected() && |
|
614 |
!this.getEnhancedPanel().getTailCheck().isSelected()) |
|
615 |
stackManager.addEnhancedFilter(true, fLayer.getSource().getFiles()[0].getName()); |
|
616 |
else |
|
617 |
stackManager.addEnhancedFilter(false, fLayer.getSource().getFiles()[0].getName()); |
|
601 |
//Filtro lineal seleccionado |
|
602 |
if( this.getEnhancedPanel().getLinealDirectoRadioButton().isSelected()){ |
|
603 |
if( this.getEnhancedPanel().getRemoveCheck().isSelected() && |
|
604 |
!this.getEnhancedPanel().getTailCheck().isSelected()) |
|
605 |
stackManager.addEnhancedFilter(true, fLayer.getSource().getFiles()[0].getName()); |
|
606 |
else |
|
607 |
stackManager.addEnhancedFilter(false, fLayer.getSource().getFiles()[0].getName()); |
|
618 | 608 |
|
619 |
//Recorte de colas seleccionado |
|
620 |
if(this.getEnhancedPanel().getTailCheck().isSelected()){ |
|
621 |
stackManager.removeFilter(stackManager.getTypeFilter("computeminmax")); |
|
622 |
double recorte = Double.parseDouble(this.getEnhancedPanel().getTailText().getText())/100; |
|
623 |
if(this.getEnhancedPanel().getRemoveCheck().isSelected()) |
|
624 |
stackManager.addTailFilter( recorte, 0D, true); |
|
625 |
else |
|
626 |
stackManager.addTailFilter( recorte, 0D, false); |
|
627 |
}else{ |
|
628 |
stackManager.removeFilter(stackManager.getTypeFilter("tail")); |
|
629 |
stackManager.addComputeMinMaxFilter(); |
|
630 |
} |
|
631 |
} |
|
632 |
|
|
633 |
//Sin filtro lineal seleccionado |
|
634 |
if(this.getEnhancedPanel().getSinRealceRadioButton().isSelected()){ |
|
609 |
//Recorte de colas seleccionado |
|
610 |
if(this.getEnhancedPanel().getTailCheck().isSelected()){ |
|
635 | 611 |
stackManager.removeFilter(stackManager.getTypeFilter("computeminmax")); |
612 |
double recorte = Double.parseDouble(this.getEnhancedPanel().getTailText().getText())/100; |
|
613 |
if(this.getEnhancedPanel().getRemoveCheck().isSelected()) |
|
614 |
stackManager.addTailFilter( recorte, 0D, true); |
|
615 |
else |
|
616 |
stackManager.addTailFilter( recorte, 0D, false); |
|
617 |
}else{ |
|
636 | 618 |
stackManager.removeFilter(stackManager.getTypeFilter("tail")); |
637 |
stackManager.removeFilter(stackManager.getTypeFilter("enhanced"));
|
|
638 |
} |
|
639 |
fLayer.getFMap().invalidate();
|
|
619 |
stackManager.addComputeMinMaxFilter();
|
|
620 |
}
|
|
621 |
}
|
|
640 | 622 |
|
641 |
return true; |
|
623 |
//Sin filtro lineal seleccionado |
|
624 |
if(this.getEnhancedPanel().getSinRealceRadioButton().isSelected()){ |
|
625 |
stackManager.removeFilter(stackManager.getTypeFilter("computeminmax")); |
|
626 |
stackManager.removeFilter(stackManager.getTypeFilter("tail")); |
|
627 |
stackManager.removeFilter(stackManager.getTypeFilter("enhanced")); |
|
642 | 628 |
} |
643 |
return false; |
|
629 |
fLayer.getFMap().invalidate(); |
|
630 |
|
|
631 |
return true; |
|
644 | 632 |
} |
645 | 633 |
|
646 | 634 |
/** |
Also available in: Unified diff