Revision 5894 trunk/libraries/libCq CMS for java.old/src/org/cresques/px/PxRaster.java
PxRaster.java | ||
---|---|---|
49 | 49 |
import org.cresques.io.raster.RasterFilterStackManager; |
50 | 50 |
import org.cresques.io.raster.RasterStats; |
51 | 51 |
import org.cresques.io.raster.RasterToImageFilter; |
52 |
import org.cresques.io.raster.TransparencyRange; |
|
52 | 53 |
|
53 | 54 |
|
54 | 55 |
/** |
... | ... | |
707 | 708 |
} |
708 | 709 |
|
709 | 710 |
/** |
711 |
* Aplica transparencia leyendo los metadatos |
|
712 |
*/ |
|
713 |
private void setTransparencyByPixel(){ |
|
714 |
if(geoFile[0].getMetadata() != null){ |
|
715 |
TransparencyRange[] noData = geoFile[0].getMetadata().parserNodata(); |
|
716 |
if(noData != null){ |
|
717 |
if (stackManager == null) { |
|
718 |
stackManager = new RasterFilterStackManager(filterStack); |
|
719 |
ArrayList entries = new ArrayList(); |
|
720 |
for(int i = 0; i < noData.length; i++) |
|
721 |
entries.add(noData[i]); |
|
722 |
|
|
723 |
stackManager.addTransparencyFilter( entries, 0x10, 0xff, 0xff, 0xff); |
|
724 |
} |
|
725 |
} |
|
726 |
} |
|
727 |
} |
|
728 |
|
|
729 |
/** |
|
710 | 730 |
* Dibuja el raster sobre el Graphics. Para ello debemos de pasar el viewPort que corresponde a la |
711 | 731 |
* vista. Este viewPort es ajustado a los tama?os m?ximos y m?nimos de la imagen por la funci?n |
712 | 732 |
* calculateNewView. Esta funci?n tambi?n asignar? la vista a los drivers. Posteriormente se calcula |
... | ... | |
758 | 778 |
Point2D.Double pt = new Point2D.Double(adjustedExtent[0], adjustedExtent[3]); |
759 | 779 |
|
760 | 780 |
try { |
761 |
//System.out.println("Dibujando PxRaster: pt0 = "+pt); |
|
762 | 781 |
vp.mat.transform(pt, pt); |
763 | 782 |
|
764 |
//System.out.println("Dibujando PxRaster: pt1 = "+pt); |
|
783 |
setTransparencyByPixel(); |
|
784 |
|
|
765 | 785 |
if ((geoFile != null) && geoFile[0] instanceof GdalFile && |
766 | 786 |
(geoFile[0].getDataType() != DataBuffer.TYPE_BYTE)) { |
767 | 787 |
//System.out.println("PxRaster: Has dado con un Raster de 16 bits"); |
Also available in: Unified diff