Revision 2313

View differences:

org.gvsig.raster.tools/branches/org.gvsig.raster.tools_dataaccess_refactoring/org.gvsig.raster.tools.app.basic/src/main/java/org/gvsig/raster/tools/app/basic/tool/filter/mask/MaskUI.java
159 159
		if(valueNoData == null) {
160 160
			valueNoData = new DataInputContainer();
161 161
			valueNoData.setLabelText(RasterToolsUtil.getText(this, "value"));
162
			valueNoData.setValue(RasterLibrary.defaultDoubleNoDataValue + "");
162
			valueNoData.setValue(RasterLibrary.defaultByteNoDataValue + "");
163 163
			valueNoData.getDataInputField().addValueChangedListener(this);
164 164
		}
165 165
		return valueNoData;
......
256 256
		}
257 257
		
258 258
		if(layer != null) {
259
			switch(layer.getDataStore().getDataType()[0]) {
260
			case Buffer.TYPE_BYTE:
261
				getValueNoData().setValue(RasterLibrary.defaultByteNoDataValue + "");
262
				break;
263
			case Buffer.TYPE_SHORT:
264
				getValueNoData().setValue(RasterLibrary.defaultShortNoDataValue + "");
265
				break;
266
			case Buffer.TYPE_INT:
267
				getValueNoData().setValue(RasterLibrary.defaultIntegerNoDataValue + "");
268
				break;
269
			case Buffer.TYPE_FLOAT:
270
				getValueNoData().setValue(RasterLibrary.defaultFloatNoDataValue + "");
271
				break;
272
			case Buffer.TYPE_DOUBLE:
273
				getValueNoData().setValue(RasterLibrary.defaultDoubleNoDataValue + "");
274
				break;
275
			}
259
			getValueNoData().setValue(RasterLibrary.defaultByteNoDataValue + "");
276 260
		}
277 261
	}
278 262
	
org.gvsig.raster.tools/branches/org.gvsig.raster.tools_dataaccess_refactoring/org.gvsig.raster.tools.app.basic/src/main/java/org/gvsig/raster/tools/app/basic/tool/filter/FilterTocMenuEntry.java
26 26
import org.gvsig.andami.PluginServices;
27 27
import org.gvsig.app.project.documents.view.toc.AbstractTocContextMenuAction;
28 28
import org.gvsig.app.project.documents.view.toc.ITocItem;
29
import org.gvsig.fmap.dal.coverage.dataset.Buffer;
29 30
import org.gvsig.fmap.mapcontext.layers.FLayer;
30 31
import org.gvsig.raster.fmap.layers.FLyrRaster;
31 32
import org.gvsig.raster.fmap.layers.ILayerState;
......
85 86
		if (!((ILayerState) selectedItems[0]).isOpen())
86 87
			return false;
87 88

  
89
		FLyrRaster lyr = (FLyrRaster)selectedItems[0];
90
		if(lyr.getDataStore().getDataType()[0] != Buffer.TYPE_BYTE) {
91
			if(lyr.getRender().getFilterList().get("enhanced_stretch") != null)
92
				return true;
93
			else
94
				return false;
95
		}
88 96
		return true;
89 97
	}
90 98

  
org.gvsig.raster.tools/branches/org.gvsig.raster.tools_dataaccess_refactoring/org.gvsig.raster.tools.app.basic/src/main/java/org/gvsig/raster/tools/app/basic/tool/filter/regionalpha/RegionAlphaFilter.java
29 29
import org.gvsig.fmap.dal.coverage.datastruct.Params;
30 30
import org.gvsig.fmap.dal.coverage.exception.FilterAddException;
31 31
import org.gvsig.fmap.dal.coverage.grid.filter.BaseRasterFilter;
32
import org.gvsig.fmap.dal.coverage.store.props.ColorInterpretation;
32 33
import org.gvsig.fmap.mapcontext.layers.FLayer;
33 34
import org.gvsig.raster.fmap.layers.FLyrRaster;
34 35
import org.gvsig.raster.roi.ROI;
......
114 115
	/**
115 116
	 * Gets the result of this filter
116 117
	 */
117
	/*public Object getResult(String name) {
118
	public Object getResult(String name) {
118 119
		if (name.equals(RESULT_TRANSPARENCY)) {
119
			ColorInterpretation ci = null;
120
			if(renderBands != null)
121
				ci = RasterLocator.getManager().getDataStructFactory().createColorInterpretation(renderBands);
122
			else {
123
				String[] values = new String[rasterResult.getBandCount()];
124
				for (int i = 0; i < values.length; i++) {
125
					values[i] = ColorInterpretation.UNDEF_BAND;
126
				}
127
				ci = RasterLocator.getManager().getDataStructFactory().createColorInterpretation(values);
120
			String[] values = new String[rasterResult.getBandCount()];
121
			for (int i = 0; i < values.length; i++) {
122
				values[i] = ColorInterpretation.UNDEF_BAND;
128 123
			}
124
			ColorInterpretation ci = RasterLocator.getManager().getDataStructFactory().createColorInterpretation(values);
129 125
			ci.setColorInterpValue(rasterResult.getBandCount() - 1, ColorInterpretation.ALPHA_BAND);
130 126
			transparency.setColorInterpretation(ci);
131 127
			transparency.activeTransparency();
132 128
			return transparency;
133 129
		}
134
		
130

  
135 131
		return super.getResult(name);
136
	}*/
132
	}
137 133

  
138 134
	public void post() {
139 135
	}
org.gvsig.raster.tools/branches/org.gvsig.raster.tools_dataaccess_refactoring/org.gvsig.raster.tools.app.basic/src/main/java/org/gvsig/raster/tools/app/basic/tool/roi/ui/listener/ROIsTablePanelListener.java
71 71
 *
72 72
 */
73 73
public class ROIsTablePanelListener implements ButtonsPanelListener, ActionListener, ListSelectionListener, TableModelListener {
74
	private ROIPanel       panel             = null;
75
	private ROIDataModel   dataModel         = null;
76
	private String 		   roiSelectedName   = "";
77
	private ROIWindow      window            = null;
78
	private File           lastDirectory     = null;
74
	private ROIPanel       panel              = null;
75
	private ROIDataModel   dataModel          = null;
76
	private String 		   roiSelectedName    = "";
77
	private ROIWindow      window             = null;
78
	private File           lastDirectory      = null;
79
	private String         defaultROIFileName = null;
79 80

  
80 81
	public ROIsTablePanelListener(
81 82
			ROIPanel panel, 
......
86 87
		this.window = window;
87 88
	}
88 89
	
90
	public void setDefaultROIFileName(String defaultROIFileName) {
91
		this.defaultROIFileName = defaultROIFileName;
92
	}
93
	
94
	public void setPathToROI(File ROI) {
95
		this.lastDirectory = ROI;
96
	}
97
	
89 98
	public void actionButtonPressed(ButtonsPanelEvent e) {
90 99
	}
91 100

  
......
187 196
		JFileChooser fileChooser = new JFileChooser();
188 197
		fileChooser.removeChoosableFileFilter(fileChooser.getAcceptAllFileFilter());
189 198
		fileChooser.addChoosableFileFilter(new ShpFileFilter());
199
		fileChooser.setSelectedFile(new File(defaultROIFileName));
190 200
		File oldROIFile = dataModel.getROIFile();
191 201
		if(oldROIFile != null) {
192 202
			fileChooser.setCurrentDirectory(oldROIFile);
org.gvsig.raster.tools/branches/org.gvsig.raster.tools_dataaccess_refactoring/org.gvsig.raster.tools.app.basic/src/main/java/org/gvsig/raster/tools/app/basic/tool/roi/ROIManagerTocMenuEntry.java
21 21
 */
22 22
package org.gvsig.raster.tools.app.basic.tool.roi;
23 23

  
24
import java.io.File;
24 25
import java.util.ArrayList;
25 26
import java.util.List;
26 27

  
......
133 134
		
134 135
		ROIPanelListener panelListener = new ROIPanelListener(window, dataModel);
135 136
		ROIsTablePanelListener tableListener = new ROIsTablePanelListener(panel, dataModel, window);
137
		tableListener.setPathToROI(getROIDefaultPath(fLayer));
138
		tableListener.setDefaultROIFileName(getDefaultROIFileName(fLayer));
136 139
		
137 140
		panel.addButtonsListener(tableListener, panelListener);
138 141
		panel.addTableListeners(tableListener, tableListener);
......
141 144
		RasterToolsUtil.addWindow(window);
142 145
	}
143 146
	
147
	private String getDefaultROIFileName(FLayer fLayer) {
148
		return fLayer.getName() + "_ROI.shp";
149
	}
150

  
151
	private File getROIDefaultPath(FLayer layer) {
152
		File path = getROIPathFromLayer(layer);
153
		if(path != null)
154
			return path;
155
		else
156
			return getPathFromLayer(layer);
157
	}
158
	
144 159
	/**
160
	 * Gets the path of the first provider
161
	 * @param layer
162
	 * @return
163
	 */
164
	private File getPathFromLayer(FLayer layer) {
165
		if(!(layer instanceof FLyrRaster))
166
			return null;
167
		String[] uriList = ((FLyrRaster)layer).getDataStore().getURIByProvider();
168
		if(uriList != null && uriList.length > 0) {
169
			String uri = uriList[0].substring(0, uriList[0].lastIndexOf(File.separator));
170
			if(uri != null)
171
				return new File(uri);
172
		}
173
		return null;
174
	}
175
	
176
	/**
177
	 * Gets the path of the first ROI file
178
	 * @param layer
179
	 * @return
180
	 */
181
	private File getROIPathFromLayer(FLayer layer) {
182
		if(!(layer instanceof FLyrRaster))
183
			return null;
184
		List<File> uriList = ((FLyrRaster)layer).getDataStore().getROIFileListFromRmf();
185
		if(uriList != null && uriList.size() > 0) {
186
			String path = uriList.get(0).getAbsolutePath();
187
			String uri = path.substring(0, path.lastIndexOf(File.separator));
188
			if(uri != null)
189
				return new File(uri);
190
		}
191
		return null;
192
	}
193
	
194
	
195
	/**
145 196
	 * Gets the list of vectorial layers loaded in all views
146 197
	 * @return
147 198
	 */
org.gvsig.raster.tools/branches/org.gvsig.raster.tools_dataaccess_refactoring/org.gvsig.raster.tools.app.basic/src/main/java/org/gvsig/raster/tools/app/basic/raster/process/FilterProcess.java
23 23
import org.gvsig.fmap.dal.coverage.store.RasterQuery;
24 24
import org.gvsig.fmap.dal.coverage.store.RasterWriter;
25 25
import org.gvsig.fmap.dal.coverage.store.props.ColorInterpretation;
26
import org.gvsig.fmap.dal.coverage.store.props.Transparency;
26 27
import org.gvsig.fmap.dal.exception.CloseException;
27 28
import org.gvsig.i18n.Messages;
28 29
import org.gvsig.raster.fmap.layers.FLyrRaster;
......
130 131
			
131 132
			insertLineLog(Messages.getText("aplicando_filtros"));
132 133

  
134
			Transparency processTransparency = dstoreCopy.getTransparency().cloneTransparency();
135
			processTransparency.setColorInterpretation(lyr.getRender().getRenderColorInterpretation().cloneColorInterpretation());
136
			
133 137
			rasterFilterList = rManager.createEmptyFilterList(dstoreCopy.getDataType()[0]);
134 138
			FilterLoader filterLoader = RasterLocator.getManager().createFilterLoader(rasterFilterList);
135 139
			filterLoader.addSrcBandCount(dstoreCopy.getBandCount());
136 140
			filterLoader.addSrcDataType(dstoreCopy.getDataType()[0]);
137 141
			filterLoader.addSrcStatistics(dstoreCopy.getStatistics());
138
			filterLoader.addTransparency(dstoreCopy.getTransparency());
142
			filterLoader.addTransparency(processTransparency);
139 143
			addSelectedFilters(rasterFilterList, listFilterUsed);
140 144
			buffer = filterLoader.applyFilters(buff);
141 145
			
org.gvsig.raster.tools/branches/org.gvsig.raster.tools_dataaccess_refactoring/org.gvsig.raster.tools.app.basic/src/main/resources-plugin/text.properties
211 211
vista_previa=Vista previa
212 212
aplicar_capa=Aplicar en capa
213 213
aplicar_vista_previa=Aplicar en vista previa
214
filtros=Filtros
214
filtros=Filtros RGB
215 215
solo_visualizacion=Solo en visualizaci?n
216 216
generar_fichero=Generar fichero
217 217
abrir_memoria=Abrir en memoria
org.gvsig.raster.tools/branches/org.gvsig.raster.tools_dataaccess_refactoring/org.gvsig.raster.tools.app.basic/src/main/resources-plugin/text_en.properties
212 212
vista_previa=Preview
213 213
aplicar_capa=Apply on layer
214 214
aplicar_vista_previa=Apply on preview
215
filtros=Filter
215
filtros=RGB Filters
216 216
solo_visualizacion=Only on visualization
217 217
generar_fichero=Generate file
218 218
abrir_memoria=Open in memory
org.gvsig.raster/branches/org.gvsig.raster_dataaccess_refactoring/org.gvsig.raster.swing/org.gvsig.raster.swing.impl/src/main/java/org/gvsig/raster/swing/impl/roi/DefaultROIPanel.java
145 145
		getROITablePanel().addListenerToTable(tableModelListener, listSelectionlistener);
146 146
	}
147 147

  
148
	/*
149
	 * (non-Javadoc)
150
	 * @see org.gvsig.raster.swing.roi.ROIPanel#getButton(int)
151
	 */
152 148
	public AbstractButton getButton(int button) {
153 149
		if(button == POLYGON_BUTTON)
154 150
			return getROIButtonsPanel().getPolygonToolButton();
......
171 167
		return null;
172 168
	}
173 169
	
174
	/*
175
	 * (non-Javadoc)
176
	 * @see org.gvsig.raster.swing.roi.ROIPanel#getLayerList(int)
177
	 */
178 170
	public JComboBox getLayerList(int button) {
179 171
		if(button == FLYRS_COMBO)
180 172
			return getROILayerPanel().getComboListOfLayers();

Also available in: Unified diff