Revision 2212 org.gvsig.raster/trunk/org.gvsig.raster/org.gvsig.raster.lib/org.gvsig.raster.lib.impl/src/main/java/org/gvsig/raster/impl/provider/tile/TileDownloaderForFiles.java

View differences:

TileDownloaderForFiles.java
27 27
import org.gvsig.fmap.dal.coverage.dataset.Buffer;
28 28
import org.gvsig.fmap.dal.coverage.datastruct.BandList;
29 29
import org.gvsig.fmap.dal.coverage.datastruct.Extent;
30
import org.gvsig.fmap.dal.coverage.exception.BandNotFoundInListException;
31 30
import org.gvsig.fmap.dal.coverage.exception.NotSupportedExtensionException;
32 31
import org.gvsig.fmap.dal.coverage.exception.ProcessInterruptedException;
33 32
import org.gvsig.fmap.dal.coverage.exception.RasterDriverException;
......
38 37
import org.gvsig.raster.cache.tile.provider.CacheStruct;
39 38
import org.gvsig.raster.impl.DefaultRasterManager;
40 39
import org.gvsig.raster.impl.buffer.DefaultRasterQuery;
41
import org.gvsig.raster.impl.datastruct.BandListImpl;
42
import org.gvsig.raster.impl.datastruct.DatasetBandImpl;
43 40
import org.gvsig.raster.impl.datastruct.ExtentImpl;
44 41
import org.gvsig.raster.impl.provider.DefaultRasterProvider;
45
import org.gvsig.raster.impl.provider.RasterProvider;
46 42

  
47 43
/** 
48 44
 * Tile getter 
......
72 68
		ColorInterpretation ci = prov.getColorInterpretation();
73 69
		
74 70
		//Escribe todas las bandas a disco
75
		BandList newBandList = createBandList(prov);
71
		BandList newBandList = prov.getDefaultBandList();//createBandList(prov);
76 72
		
77 73
		Buffer bufResult = null;
78 74
		
......
157 153
	 * @param provider
158 154
	 * @return
159 155
	 */
160
	private BandList createBandList(RasterProvider provider) {
161
		BandList bandList = new BandListImpl();
162
		String[] uriByProvider = provider.getURIByProvider();
163
		int[] nBandsByProvider = provider.getBandCountByProvider();
164
		
165
		for (int iProvider = 0; iProvider < uriByProvider.length; iProvider++) {
166
			for (int iBand = 0; iBand < nBandsByProvider[iProvider]; iBand++) {
167
				try {
168
					bandList.addBand(new DatasetBandImpl(uriByProvider[iProvider], iBand, provider.getDataType()[0], nBandsByProvider[iProvider]));
169
				} catch (BandNotFoundInListException e1) {
170
				}
171
			}
172
		}
173
		
174
		int[] drawableBands = new int[bandList.getBandCount()];
175
		for (int i = 0; i < bandList.getBandCount(); i++) {
176
			drawableBands[i] = i;
177
		}
178
		
179
		bandList.setDrawableBands(drawableBands);
180
		return bandList;
181
	}
156
//	private BandList createBandList(RasterProvider provider) {
157
//		BandList bandList = new BandListImpl();
158
//		String[] uriByProvider = provider.getURIByProvider();
159
//		int[] nBandsByProvider = provider.getBandCountByProvider();
160
//		
161
//		for (int iProvider = 0; iProvider < uriByProvider.length; iProvider++) {
162
//			for (int iBand = 0; iBand < nBandsByProvider[iProvider]; iBand++) {
163
//				try {
164
//					bandList.addBand(new DatasetBandImpl(uriByProvider[iProvider], iBand, provider.getDataType()[0], nBandsByProvider[iProvider]));
165
//				} catch (BandNotFoundInListException e1) {
166
//				}
167
//			}
168
//		}
169
//		
170
//		int[] drawableBands = new int[bandList.getBandCount()];
171
//		for (int i = 0; i < bandList.getBandCount(); i++) {
172
//			drawableBands[i] = i;
173
//		}
174
//		
175
//		bandList.setDrawableBands(drawableBands);
176
//		return bandList;
177
//	}
182 178
	
183 179
	/**
184 180
	 * If the provider doesn't support resampling then this method reamples the result manually

Also available in: Unified diff