Revision: 6107
http://sourceforge.net/p/jump-pilot/code/6107
Author: ma15569
Date: 2019-01-19 12:24:41 +0000 (Sat, 19 Jan 2019)
Log Message:
-----------
small enhancement
Modified Paths:
--------------
plug-ins/OpenKLEM/OpenKLEMOpenJUMP/trunk/src/com/geomaticaeambiente/klemgui/plugin/rastertools/RasterizeVectorLayerPlugIn.java
Modified:
plug-ins/OpenKLEM/OpenKLEMOpenJUMP/trunk/src/com/geomaticaeambiente/klemgui/plugin/rastertools/RasterizeVectorLayerPlugIn.java
===================================================================
---
plug-ins/OpenKLEM/OpenKLEMOpenJUMP/trunk/src/com/geomaticaeambiente/klemgui/plugin/rastertools/RasterizeVectorLayerPlugIn.java
2019-01-19 11:03:24 UTC (rev 6106)
+++
plug-ins/OpenKLEM/OpenKLEMOpenJUMP/trunk/src/com/geomaticaeambiente/klemgui/plugin/rastertools/RasterizeVectorLayerPlugIn.java
2019-01-19 12:24:41 UTC (rev 6107)
@@ -37,10 +37,15 @@
import com.vividsolutions.jts.geom.Geometry;
import com.vividsolutions.jump.feature.Feature;
import com.vividsolutions.jump.feature.FeatureSchema;
+import com.vividsolutions.jump.task.TaskMonitor;
import com.vividsolutions.jump.util.StringUtil;
+import com.vividsolutions.jump.workbench.Logger;
import com.vividsolutions.jump.workbench.model.Layer;
+import com.vividsolutions.jump.workbench.plugin.AbstractPlugIn;
import com.vividsolutions.jump.workbench.plugin.PlugInContext;
+import com.vividsolutions.jump.workbench.plugin.ThreadedBasePlugIn;
import com.vividsolutions.jump.workbench.ui.ErrorDialog;
+import com.vividsolutions.jump.workbench.ui.task.TaskMonitorManager;
/**
*
@@ -290,79 +295,34 @@
public void rightButton() {
try {
- rasterizeCommand(componentsWithActions);
- /* super.getInitialDialog().setCursor(new
Cursor(Cursor.WAIT_CURSOR));
-
- //get input information
- String layerSelected =
GUIUtils.getStringValue(componentsWithActions.getComponent("00",
GUIUtils.INPUT, 1));
- String attributeSelected =
GUIUtils.getStringValue(componentsWithActions.getComponent("01",
GUIUtils.INPUT, 1));
- double cellDimension =
GUIUtils.getDoubleValue(componentsWithActions.getComponent("02",
GUIUtils.INPUT, 1));
- // Snapping
- Envelope clipEnvelope = null;
- boolean snap =
GUIUtils.getBooleanValue(componentsWithActions.getComponent("03",
GUIUtils.INPUT, 0));
- String snapRasterName = null;
- if(snap) {
- snapRasterName =
GUIUtils.getStringValue(componentsWithActions.getComponent("04",
GUIUtils.INPUT, 1));
- }
-
- //get output raster name
- String outRasterName =
GUIUtils.getStringValue(componentsWithActions.getComponent("00",
GUIUtils.OUTPUT, 1));
-
- // Check input and output values
- checksValues(layerSelected, attributeSelected,
snapRasterName, outRasterName);
+ AbstractPlugIn.toActionListener(new ThreadedBasePlugIn() {
+ @Override
+ public String getName() {
+ return null;
+ }
- if(snap) {
- RasterImageLayer ril =
PluginUtils.getRasterImageLayerSelected((CustomComboBox.RasterComboBox)
componentsWithActions.getComponent("04", GUIUtils.INPUT, 1));
- clipEnvelope = ril.getActualImageEnvelope();
- }
-
- //from name to Layer
- Layer layer =
PluginUtils.getLayerSelected((CustomComboBox.LayerComboBox)
componentsWithActions.getComponent("00", GUIUtils.INPUT, 1));
+ @Override
+ public boolean execute(PlugInContext context)
+ throws Exception {
+ return true;
+ }
- // Get selected features, or all features if none
selected, or return error if none present
- Collection<Feature> features =
context.getLayerViewPanel().getSelectionManager().getFeatureSelection().getFeaturesWithSelectedItems(layer);
-
- if (features.isEmpty()) {
- features =
layer.getFeatureCollectionWrapper().getFeatures();
+ @Override
+ public void run(TaskMonitor monitor,
+ PlugInContext context) throws Exception {
+ monitor.report(PluginUtils.getResources()
+ .getString("OpenKlem.executing-process"));
+ // monitor.allowCancellationRequests();
+ reportNothingToUndoYet(context);
+ try {
+ rasterizeCommand(componentsWithActions);
+ } catch (final Exception ex) {
+ Logger.error(getName(), ex);
}
-
- Feature[] ar_features = new
Feature[features.size()];
- Iterator<Feature> iter = features.iterator();
- int count = 0;
- while (iter.hasNext()) {
- ar_features[count] = (Feature) iter.next();
- count++;
- }
-
- //get information about attribute selected
- FeatureSchema featureSchema =
layer.getFeatureCollectionWrapper().getFeatureSchema();
- int fieldsCount =
featureSchema.getAttributeIndex(attributeSelected);
-
- Geometry[] ar_geoms = new
Geometry[ar_features.length];
- double[] ar_attributes = new
double[ar_features.length];
-
- for(int f=0; f<ar_features.length; f++) {
- ar_geoms[f] = ar_features[f].getGeometry();
- ar_attributes[f] =
Double.parseDouble(ar_features[f].getString(fieldsCount));
- }
-
- // Rasterize
- DoubleBasicGrid rasterized = Rasterizer.rasterize(
- ar_geoms, ar_attributes, clipEnvelope,
cellDimension);
-
- //Create the output file and display on OJ
- //Save grid as tiff
- RasterUtils.saveOutputRasterAsTiff(rasterized, new
File(outRasterName));
- //Display raster on OJ from file
- RasterUtils.displayRasterFileOnOJ(
- context.getWorkbenchContext(),
- new File(outRasterName),
- null);
-
-
JOptionPane.showMessageDialog(super.getInitialDialog(),
-
PluginUtils.getResources().getString("SetWorkspacePlugin.Done.message"),
PluginUtils.plugInName, JOptionPane.INFORMATION_MESSAGE);
- */
+ }
+ }, context.getWorkbenchContext(), new TaskMonitorManager())
+ .actionPerformed(null);
} catch (final OutOfMemoryError out) {
ErrorDialog.show(super.getInitialDialog(),
PluginUtils.plugInName, out.toString(),
_______________________________________________
Jump-pilot-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/jump-pilot-devel