Revision 1139 org.gvsig.raster.tools/trunk/org.gvsig.raster.tools/org.gvsig.raster.tools.app/org.gvsig.raster.tools.app.basic/src/main/java/org/gvsig/raster/tools/app/basic/raster/gui/wizard/PrepareLayerAskUsingTiles.java

View differences:

PrepareLayerAskUsingTiles.java
36 36
import org.gvsig.fmap.dal.DataStoreParameters;
37 37
import org.gvsig.fmap.dal.coverage.store.parameter.RasterDataParameters;
38 38
import org.gvsig.fmap.dal.coverage.store.parameter.TileDataParameters;
39
import org.gvsig.fmap.dal.exception.CloseException;
39 40
import org.gvsig.fmap.dal.serverexplorer.filesystem.FilesystemStoreParameters;
41
import org.gvsig.fmap.mapcontext.MapContextLocator;
42
import org.gvsig.fmap.mapcontext.MapContextManager;
43
import org.gvsig.fmap.mapcontext.exceptions.LoadLayerException;
40 44
import org.gvsig.fmap.mapcontext.layers.FLayer;
45
import org.gvsig.raster.fmap.layers.DefaultFLyrRaster;
46
import org.gvsig.raster.fmap.layers.FLyrRaster;
41 47
import org.gvsig.tools.exception.BaseException;
42 48

  
43 49
public class PrepareLayerAskUsingTiles implements PrepareDataStoreParameters, PrepareLayer {
......
87 93
	 * @see org.gvsig.app.prepareAction.PrepareLayer#prepare(org.gvsig.fmap.mapcontext.layers.FLayer, org.gvsig.app.prepareAction.PrepareContextView)
88 94
	 */
89 95
	public FLayer prepare(FLayer layer, PrepareContextView context) {
96
		if(layer instanceof FLyrRaster) {
97
			FLyrRaster lyrRaster = (FLyrRaster)layer;
98
			if(lyrRaster.getDataStore().getParameters() instanceof TileDataParameters) {
99
				if(	lyrRaster.getFullEnvelope().getMinimum(0) == 0 &&
100
						lyrRaster.getFullEnvelope().getMinimum(1) == 0 &&
101
						lyrRaster.getFullEnvelope().getMaximum(0) == (lyrRaster).getPxWidth() &&
102
						lyrRaster.getFullEnvelope().getMaximum(1) == (lyrRaster).getPxHeight()) {
103
					MapContextManager mcm = MapContextLocator.getMapContextManager();
104
					try {
105
						FLyrRaster newLayer = (DefaultFLyrRaster) mcm.createLayer(lyrRaster.getName(), 
106
								(DataStoreParameters)((TileDataParameters)lyrRaster.getDataStore().getParameters()).getDataParameters());
107
						lyrRaster.getDataStore().close();
108
						return newLayer;
109
					} catch (LoadLayerException e) {
110
						return lyrRaster;
111
					} catch (CloseException e) {
112
					}
113
				}
114
			}
115
		}
90 116
		return layer;
91 117
	}
92 118
	

Also available in: Unified diff