Revision 4345 org.gvsig.raster.reproject/trunk/org.gvsig.raster.reproject/org.gvsig.raster.reproject.app.reprojectclient/src/main/java/org/gvsig/raster/reproject/app/PrepareLayerAskProjection.java

View differences:

PrepareLayerAskProjection.java
24 24
import java.io.File;
25 25
import java.util.HashMap;
26 26
import java.util.Map;
27
import org.apache.commons.io.FilenameUtils;
27 28

  
28 29
import org.cresques.cts.IProjection;
29 30
import org.gvsig.app.prepareAction.PrepareContext;
......
192 193
			if(srcProj == null)
193 194
				return null;
194 195

  
195
			String uri = params.getURI();
196
			uri = uri.substring(0, uri.lastIndexOf(".")) + "_" + dstProj.getAbrev() + uri.substring(uri.lastIndexOf("."));
197
			uri = uri.replace(':', '_');
198

  
199
			if(!new File(uri).exists()) {					
196
			File f = new File(params.getURI());
197
                        File fdst = new File(
198
                                f.getParentFile(), 
199
                                FilenameUtils.getBaseName(f.getName()) 
200
                                        + "_" 
201
                                        + dstProj.getAbrev()
202
                                        + FilenameUtils.getExtension(f.getName())
203
                        );
204
			
205
			if(!fdst.exists()) {					
200 206
				DataProcess process = null;
201 207
				try {
202 208
					process = RasterBaseAlgorithmLibrary.getManager().createRasterTask("RasterReprojectionProcess");
......
208 214
				process.addParam(ReprojectProcess.RASTER_STORE, lyrRaster.getDataStore());
209 215
				process.addParam(ReprojectProcess.SIZEX, 0); //Calculo autom?tico de tama?o
210 216
				process.addParam(ReprojectProcess.SIZEY, 0);
211
				process.addParam(ReprojectProcess.PATH, uri);
217
				process.addParam(ReprojectProcess.PATH, fdst.toURI());
212 218
				process.addParam(ReprojectProcess.SRC_PROJECTION, srcProj);
213 219
				process.addParam(ReprojectProcess.DST_PROJECTION, dstProj);
214 220
				process.addParam(ReprojectProcess.CELLSIZE, lyrRaster.getDataStore().getCellSize());
......
230 236
				if(process.getResult() != null) {
231 237
					HashMap<String, Object> map = (HashMap<String, Object>)process.getResult();
232 238
					String filename = (String)map.get(ReprojectProcess.FILENAME);
233
					params.setURI(filename);
239
					params.setURI(new File(filename).toURI());
234 240
					return params;
235 241
				}
236 242
			} else {
237
				params.setURI(uri);
243
				params.setURI(fdst.toURI());
238 244
				return params;
239 245
			}
240 246

  

Also available in: Unified diff