Revision 723 org.gvsig.raster.mosaic/trunk/org.gvsig.raster.mosaic/org.gvsig.raster.mosaic.io/src/main/java/org/gvsig/raster/mosaic/io/MosaicProvider.java
MosaicProvider.java | ||
---|---|---|
55 | 55 |
import org.gvsig.fmap.dal.coverage.exception.RemoteServiceException; |
56 | 56 |
import org.gvsig.fmap.dal.coverage.exception.RmfSerializerException; |
57 | 57 |
import org.gvsig.fmap.dal.coverage.store.RasterDataStore; |
58 |
import org.gvsig.fmap.dal.coverage.store.parameter.RasterDataParameters; |
|
58 | 59 |
import org.gvsig.fmap.dal.coverage.store.props.HistogramComputer; |
59 | 60 |
import org.gvsig.fmap.dal.coverage.store.props.Statistics; |
60 | 61 |
import org.gvsig.fmap.dal.coverage.store.props.TimeSeries; |
... | ... | |
240 | 241 |
noData = getParameters().getNoData(); |
241 | 242 |
noDataEnabled = true; |
242 | 243 |
setColorInterpretation(providerList.get(0).getColorInterpretation().cloneColorInterpretation()); |
243 |
transparency = providerList.get(0).getTransparency(); |
|
244 |
|
|
244 | 245 |
//Se le pone banda de transparencia siempre |
245 |
if(providerList.get(0).getDataType()[0] == Buffer.TYPE_BYTE && !providerList.get(0).getTransparency().existAlphaBand()) {
|
|
246 |
if(providerList.get(0).getDataType()[0] == Buffer.TYPE_BYTE) { |
|
246 | 247 |
transparency = new DataStoreTransparency(); |
247 | 248 |
transparency.setTransparencyBand(getBandCount()); |
248 |
} |
|
249 |
} else |
|
250 |
transparency = providerList.get(0).getTransparency(); |
|
249 | 251 |
|
250 | 252 |
extent = null; |
251 | 253 |
for (int i = 0; i < providerList.size(); i++) { |
... | ... | |
329 | 331 |
File file = new File(multiFileFormat.getPathToFile(i)); |
330 | 332 |
if(file.exists()) { |
331 | 333 |
RasterProvider prov = loadProvider(multiFileFormat.getPathToFile(i), storeServices); |
334 |
if(i == 0) |
|
335 |
getParameters().setPixelSize(prov.getCellSize()); |
|
332 | 336 |
getParameters().addProvider(prov); |
333 | 337 |
} |
334 | 338 |
} catch (ProviderNotRegisteredException e) { |
... | ... | |
624 | 628 |
if(getParameters().hasParamsChanged()) |
625 | 629 |
calcMetadataFromParams(); |
626 | 630 |
setView(extent); |
627 |
String layerName = getLayerNameFromTimeSelection(getParameters().getTimeSelection());
|
|
631 |
String layerName = getLayerNameFromSelection(getParameters().getTimeSelection()); |
|
628 | 632 |
ArrayList<Tile> tileList = getTileList(extent, bandList, rasterBuf.getWidth(), rasterBuf.getHeight(), layerName); |
629 | 633 |
try { |
630 | 634 |
for (int i = 0; i < tileList.size(); i++) { |
... | ... | |
675 | 679 |
if(getParameters().hasParamsChanged()) |
676 | 680 |
calcMetadataFromParams(); |
677 | 681 |
setView(extent); |
678 |
String layerName = getLayerNameFromTimeSelection(getParameters().getTimeSelection());
|
|
682 |
String layerName = getLayerNameFromSelection(getParameters().getTimeSelection()); |
|
679 | 683 |
ArrayList<Tile> tileList = getTileList(extent, bandList, bufWidth, bufHeight, layerName); |
680 | 684 |
try { |
681 | 685 |
for (int i = 0; i < tileList.size(); i++) { |
... | ... | |
805 | 809 |
} |
806 | 810 |
|
807 | 811 |
/** |
808 |
* Gets the layer name using the time selection |
|
812 |
* Gets the layer name using the time selection and visibility
|
|
809 | 813 |
* @param t |
810 | 814 |
* @return |
811 | 815 |
*/ |
812 |
private String getLayerNameFromTimeSelection(Time t) {
|
|
816 |
private String getLayerNameFromSelection(Time t) { |
|
813 | 817 |
String name = ""; |
814 | 818 |
|
815 | 819 |
MessageDigest md = null; |
... | ... | |
822 | 826 |
if(t == null || selectedProviders.size() != providerList.size()) { |
823 | 827 |
selectedProviders.clear(); |
824 | 828 |
for (int i = 0; i < providerList.size(); i++) { |
825 |
selectedProviders.add(providerList.get(i)); |
|
826 |
name += providerList.get(i).getName(); |
|
829 |
RasterProvider prov = providerList.get(i); |
|
830 |
selectedProviders.add(prov); |
|
831 |
if(!((RasterDataParameters)prov.getDataParameters()).isVisible()) |
|
832 |
name += prov.getURI().substring(prov.getURI().lastIndexOf(File.separator) + 1, prov.getURI().length()); |
|
827 | 833 |
} |
828 | 834 |
} else { |
829 | 835 |
selectedProviders.clear(); |
... | ... | |
845 | 851 |
if( instant != null && |
846 | 852 |
t.intersects(instant) && |
847 | 853 |
!selectedProviders.contains(providerList.get(i))) { |
848 |
selectedProviders.add(providerList.get(i)); |
|
849 |
name += providerList.get(i).getName(); |
|
854 |
RasterProvider prov = providerList.get(i); |
|
855 |
selectedProviders.add(prov); |
|
856 |
if(!((RasterDataParameters)prov.getDataParameters()).isVisible()) |
|
857 |
name += prov.getURI().substring(prov.getURI().lastIndexOf(File.separator) + 1, prov.getURI().length()); |
|
850 | 858 |
} |
851 | 859 |
} |
852 | 860 |
} catch (RmfSerializerException e) { |
Also available in: Unified diff