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
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