Revision: 4516 http://sourceforge.net/p/jump-pilot/code/4516 Author: bertazza Date: 2015-06-26 13:33:30 +0000 (Fri, 26 Jun 2015) Log Message: ----------- Raster styles: some bugs fixed.
Modified Paths: -------------- core/trunk/ChangeLog core/trunk/src/org/openjump/core/rasterimage/RasterImageLayer.java core/trunk/src/org/openjump/core/rasterimage/styler/ui/IntervalPanel.java core/trunk/src/org/openjump/core/rasterimage/styler/ui/RasterStylesDialog.java core/trunk/src/org/openjump/core/rasterimage/styler/ui/SingleValuesPanel.java core/trunk/src/org/openjump/core/rasterimage/styler/ui/StretchedPanel.form core/trunk/src/org/openjump/core/rasterimage/styler/ui/StretchedPanel.java Modified: core/trunk/ChangeLog =================================================================== --- core/trunk/ChangeLog 2015-06-25 11:29:04 UTC (rev 4515) +++ core/trunk/ChangeLog 2015-06-26 13:33:30 UTC (rev 4516) @@ -1,5 +1,8 @@ # for display continuity sake please use 2 spaces instead of tabs +2015-06-26 bertazza + * Raster styles: some bugs fixed. + 2015-06-25 Giuseppe Aruta <giuseppe_ar...@yahoo.it> * Reorganized Select Item context menu: move some plugins to a new "Other tools" submenu * Add Measure Selected Features plugin to Select Items context menu>Other tools submenu Modified: core/trunk/src/org/openjump/core/rasterimage/RasterImageLayer.java =================================================================== --- core/trunk/src/org/openjump/core/rasterimage/RasterImageLayer.java 2015-06-25 11:29:04 UTC (rev 4515) +++ core/trunk/src/org/openjump/core/rasterimage/RasterImageLayer.java 2015-06-26 13:33:30 UTC (rev 4516) @@ -616,9 +616,27 @@ newImage.setRGB(col, row, new Color(r, g, b, alpha).getRGB()); } } else { + // Symbology exists double value = actualRasterData.getSampleDouble(col, row, 0); + /** + * If symbology min value is higher than raster min value + * the value becomes equal to the symbology min value + */ + + Double[] symbologyClassLimits = symbology.getColorMapEntries_tm().keySet().toArray(new Double[symbology.getColorMapEntries_tm().keySet().size()]); + double symbMinValue = symbologyClassLimits[0]; + double symbFirstValue = symbologyClassLimits[0]; + if(this.isNoData(symbFirstValue)) { + symbMinValue = symbologyClassLimits[1]; + } + + if(value < symbMinValue) { + value = symbMinValue; + } + Color color = symbology.getColor(value); + if((Double.isNaN(value) || Double.isInfinite(value) || value == noDataValue) && color == null) { newImage.setRGB(col, row, Color.TRANSLUCENT); Modified: core/trunk/src/org/openjump/core/rasterimage/styler/ui/IntervalPanel.java =================================================================== --- core/trunk/src/org/openjump/core/rasterimage/styler/ui/IntervalPanel.java 2015-06-25 11:29:04 UTC (rev 4515) +++ core/trunk/src/org/openjump/core/rasterimage/styler/ui/IntervalPanel.java 2015-06-26 13:33:30 UTC (rev 4516) @@ -8,6 +8,7 @@ import java.awt.GridBagConstraints; import java.awt.GridBagLayout; import java.util.ArrayList; +import java.util.EnumMap; import java.util.HashMap; import java.util.List; import java.util.Map; @@ -363,7 +364,7 @@ return null; } - public RasterSymbology getRasterSymbolizer() throws Exception{ + public RasterSymbology getRasterStyler() throws Exception{ RasterSymbology rasterSymbolizer = new RasterSymbology(RasterSymbology.ColorMapType.INTERVALS); for (ColorMapEntry colorMapEntry : colorsTablePanel.getColorMapEntries()) { @@ -374,7 +375,7 @@ } private final Component parent; - private final Map<ClassificationMethod,String> classMethods_m = new HashMap<ClassificationMethod,String>(); + private final Map<ClassificationMethod,String> classMethods_m = new EnumMap<ClassificationMethod,String>(ClassificationMethod.class); private double[] rasterData = null; private ColorsTablePanel colorsTablePanel = null; private double noDataValue; Modified: core/trunk/src/org/openjump/core/rasterimage/styler/ui/RasterStylesDialog.java =================================================================== --- core/trunk/src/org/openjump/core/rasterimage/styler/ui/RasterStylesDialog.java 2015-06-25 11:29:04 UTC (rev 4515) +++ core/trunk/src/org/openjump/core/rasterimage/styler/ui/RasterStylesDialog.java 2015-06-26 13:33:30 UTC (rev 4516) @@ -357,9 +357,9 @@ if(jTabbedPane_Type.getSelectedComponent() instanceof StretchedPanel) { finalRasterSymbolizer = stretchedPanel.getRasterStyler(); } else if(jTabbedPane_Type.getSelectedComponent() instanceof IntervalPanel) { - finalRasterSymbolizer = intervalPanel.getRasterSymbolizer(); + finalRasterSymbolizer = intervalPanel.getRasterStyler(); } else if(jTabbedPane_Type.getSelectedComponent() instanceof SingleValuesPanel) { - finalRasterSymbolizer = singleValuesPanel.getRasterSymbolizer(); + finalRasterSymbolizer = singleValuesPanel.getRasterStyler(); } Modified: core/trunk/src/org/openjump/core/rasterimage/styler/ui/SingleValuesPanel.java =================================================================== --- core/trunk/src/org/openjump/core/rasterimage/styler/ui/SingleValuesPanel.java 2015-06-25 11:29:04 UTC (rev 4515) +++ core/trunk/src/org/openjump/core/rasterimage/styler/ui/SingleValuesPanel.java 2015-06-26 13:33:30 UTC (rev 4516) @@ -257,7 +257,7 @@ colorsTablePanel.rampColors(); } - public RasterSymbology getRasterSymbolizer() throws Exception{ + public RasterSymbology getRasterStyler() throws Exception{ RasterSymbology rasterSymbolizer = new RasterSymbology(RasterSymbology.ColorMapType.SINGLE); for (ColorMapEntry colorMapEntry : colorsTablePanel.getColorMapEntries()) { Modified: core/trunk/src/org/openjump/core/rasterimage/styler/ui/StretchedPanel.form =================================================================== --- core/trunk/src/org/openjump/core/rasterimage/styler/ui/StretchedPanel.form 2015-06-25 11:29:04 UTC (rev 4515) +++ core/trunk/src/org/openjump/core/rasterimage/styler/ui/StretchedPanel.form 2015-06-26 13:33:30 UTC (rev 4516) @@ -50,30 +50,6 @@ </Constraint> </Constraints> </Component> - <Component class="javax.swing.JLabel" name="jLabel_Label"> - <Properties> - <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor"> - <Font name="Tahoma" size="11" style="2"/> - </Property> - <Property name="text" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor"> - <ResourceString bundle="com/geomaticaeambiente/openjump/rasterstyles/resources/Bundle.properties" key="StretchedPanel.jLabel_Label.text" replaceFormat="java.util.ResourceBundle.getBundle("{bundleNameSlashes}").getString("{key}")"/> - </Property> - <Property name="maximumSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor"> - <Dimension value="[30, 14]"/> - </Property> - <Property name="minimumSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor"> - <Dimension value="[30, 14]"/> - </Property> - <Property name="preferredSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor"> - <Dimension value="[30, 14]"/> - </Property> - </Properties> - <Constraints> - <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignGridBagLayout" value="org.netbeans.modules.form.compat2.layouts.DesignGridBagLayout$GridBagConstraintsDescription"> - <GridBagConstraints gridX="2" gridY="0" gridWidth="1" gridHeight="1" fill="0" ipadX="0" ipadY="0" insetsTop="5" insetsLeft="0" insetsBottom="0" insetsRight="0" anchor="10" weightX="0.0" weightY="0.0"/> - </Constraint> - </Constraints> - </Component> <Component class="javax.swing.JLabel" name="jLabel_MinLabel"> <Properties> <Property name="text" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor"> @@ -117,27 +93,6 @@ </Constraint> </Constraints> </Component> - <Component class="javax.swing.JTextField" name="jTextField_MinLabel"> - <Properties> - <Property name="text" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor"> - <ResourceString bundle="com/geomaticaeambiente/openjump/rasterstyles/resources/Bundle.properties" key="StretchedPanel.jTextField_MinLabel.text" replaceFormat="java.util.ResourceBundle.getBundle("{bundleNameSlashes}").getString("{key}")"/> - </Property> - <Property name="minimumSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor"> - <Dimension value="[83, 20]"/> - </Property> - <Property name="preferredSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor"> - <Dimension value="[83, 20]"/> - </Property> - </Properties> - <Events> - <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="jTextField_MinLabelActionPerformed"/> - </Events> - <Constraints> - <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignGridBagLayout" value="org.netbeans.modules.form.compat2.layouts.DesignGridBagLayout$GridBagConstraintsDescription"> - <GridBagConstraints gridX="2" gridY="1" gridWidth="1" gridHeight="1" fill="0" ipadX="0" ipadY="0" insetsTop="5" insetsLeft="5" insetsBottom="5" insetsRight="5" anchor="10" weightX="0.0" weightY="0.0"/> - </Constraint> - </Constraints> - </Component> <Component class="javax.swing.JLabel" name="jLabel_MaxLabel"> <Properties> <Property name="text" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor"> @@ -183,24 +138,6 @@ </Constraint> </Constraints> </Component> - <Component class="javax.swing.JTextField" name="jTextField_MaxLabel"> - <Properties> - <Property name="text" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor"> - <ResourceString bundle="com/geomaticaeambiente/openjump/rasterstyles/resources/Bundle.properties" key="StretchedPanel.jTextField_MaxLabel.text" replaceFormat="java.util.ResourceBundle.getBundle("{bundleNameSlashes}").getString("{key}")"/> - </Property> - <Property name="minimumSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor"> - <Dimension value="[83, 20]"/> - </Property> - <Property name="preferredSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor"> - <Dimension value="[83, 20]"/> - </Property> - </Properties> - <Constraints> - <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignGridBagLayout" value="org.netbeans.modules.form.compat2.layouts.DesignGridBagLayout$GridBagConstraintsDescription"> - <GridBagConstraints gridX="2" gridY="2" gridWidth="1" gridHeight="1" fill="0" ipadX="0" ipadY="0" insetsTop="5" insetsLeft="5" insetsBottom="5" insetsRight="5" anchor="10" weightX="0.0" weightY="0.0"/> - </Constraint> - </Constraints> - </Component> <Container class="javax.swing.JPanel" name="jPanel_ShowGradient"> <Properties> <Property name="border" type="javax.swing.border.Border" editor="org.netbeans.modules.form.editors2.BorderEditor"> Modified: core/trunk/src/org/openjump/core/rasterimage/styler/ui/StretchedPanel.java =================================================================== --- core/trunk/src/org/openjump/core/rasterimage/styler/ui/StretchedPanel.java 2015-06-25 11:29:04 UTC (rev 4515) +++ core/trunk/src/org/openjump/core/rasterimage/styler/ui/StretchedPanel.java 2015-06-26 13:33:30 UTC (rev 4516) @@ -37,13 +37,10 @@ java.awt.GridBagConstraints gridBagConstraints; jLabel_Value = new javax.swing.JLabel(); - jLabel_Label = new javax.swing.JLabel(); jLabel_MinLabel = new javax.swing.JLabel(); jLabel_MinValue = new javax.swing.JLabel(); - jTextField_MinLabel = new javax.swing.JTextField(); jLabel_MaxLabel = new javax.swing.JLabel(); jLabel_MaxValue = new javax.swing.JLabel(); - jTextField_MaxLabel = new javax.swing.JTextField(); jPanel_ShowGradient = new javax.swing.JPanel(); jButton_Custom = new javax.swing.JButton(); @@ -69,17 +66,6 @@ gridBagConstraints.insets = new java.awt.Insets(5, 0, 0, 0); add(jLabel_Value, gridBagConstraints); - jLabel_Label.setFont(new java.awt.Font("Tahoma", 2, 11)); // NOI18N - jLabel_Label.setText(bundle.getString("org.openjump.core.rasterimage.styler.ui.StretchedPanel.jLabel_Label.text")); // NOI18N - jLabel_Label.setMaximumSize(new java.awt.Dimension(30, 14)); - jLabel_Label.setMinimumSize(new java.awt.Dimension(30, 14)); - jLabel_Label.setPreferredSize(new java.awt.Dimension(30, 14)); - gridBagConstraints = new java.awt.GridBagConstraints(); - gridBagConstraints.gridx = 2; - gridBagConstraints.gridy = 0; - gridBagConstraints.insets = new java.awt.Insets(5, 0, 0, 0); - add(jLabel_Label, gridBagConstraints); - jLabel_MinLabel.setText(bundle.getString("org.openjump.core.rasterimage.styler.ui.StretchedPanel.jLabel_MinLabel.text")); // NOI18N jLabel_MinLabel.setMaximumSize(new java.awt.Dimension(83, 14)); jLabel_MinLabel.setMinimumSize(new java.awt.Dimension(83, 14)); @@ -102,20 +88,6 @@ gridBagConstraints.insets = new java.awt.Insets(5, 5, 5, 5); add(jLabel_MinValue, gridBagConstraints); - jTextField_MinLabel.setText(bundle.getString("org.openjump.core.rasterimage.styler.ui.StretchedPanel.jTextField_MinLabel.text")); // NOI18N - jTextField_MinLabel.setMinimumSize(new java.awt.Dimension(83, 20)); - jTextField_MinLabel.setPreferredSize(new java.awt.Dimension(83, 20)); - jTextField_MinLabel.addActionListener(new java.awt.event.ActionListener() { - public void actionPerformed(java.awt.event.ActionEvent evt) { - jTextField_MinLabelActionPerformed(evt); - } - }); - gridBagConstraints = new java.awt.GridBagConstraints(); - gridBagConstraints.gridx = 2; - gridBagConstraints.gridy = 1; - gridBagConstraints.insets = new java.awt.Insets(5, 5, 5, 5); - add(jTextField_MinLabel, gridBagConstraints); - jLabel_MaxLabel.setText(bundle.getString("org.openjump.core.rasterimage.styler.ui.StretchedPanel.jLabel_MaxLabel.text")); // NOI18N jLabel_MaxLabel.setToolTipText(bundle.getString("org.openjump.core.rasterimage.styler.ui.StretchedPanel.jLabel_MaxLabel.toolTipText")); // NOI18N jLabel_MaxLabel.setMaximumSize(new java.awt.Dimension(83, 14)); @@ -138,15 +110,6 @@ gridBagConstraints.insets = new java.awt.Insets(5, 5, 5, 5); add(jLabel_MaxValue, gridBagConstraints); - jTextField_MaxLabel.setText(bundle.getString("org.openjump.core.rasterimage.styler.ui.StretchedPanel.jTextField_MaxLabel.text")); // NOI18N - jTextField_MaxLabel.setMinimumSize(new java.awt.Dimension(83, 20)); - jTextField_MaxLabel.setPreferredSize(new java.awt.Dimension(83, 20)); - gridBagConstraints = new java.awt.GridBagConstraints(); - gridBagConstraints.gridx = 2; - gridBagConstraints.gridy = 2; - gridBagConstraints.insets = new java.awt.Insets(5, 5, 5, 5); - add(jTextField_MaxLabel, gridBagConstraints); - jPanel_ShowGradient.setBorder(javax.swing.BorderFactory.createEtchedBorder()); jPanel_ShowGradient.setMinimumSize(new java.awt.Dimension(80, 75)); jPanel_ShowGradient.setPreferredSize(new java.awt.Dimension(73, 75)); @@ -170,17 +133,11 @@ add(jButton_Custom, gridBagConstraints); }// </editor-fold>//GEN-END:initComponents - private void jTextField_MinLabelActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jTextField_MinLabelActionPerformed - // TODO add your handling code here: - }//GEN-LAST:event_jTextField_MinLabelActionPerformed - private void formComponentShown(java.awt.event.ComponentEvent evt) {//GEN-FIRST:event_formComponentShown //Set label for elevation jLabel_MinValue.setText(Double.toString(GUIUtils.round(minValue, 3))); jLabel_MaxValue.setText(Double.toString(GUIUtils.round(maxValue, 3))); - jTextField_MinLabel.setText(Double.toString(GUIUtils.round(minValue, 3))); - jTextField_MaxLabel.setText(Double.toString(GUIUtils.round(maxValue, 3))); }//GEN-LAST:event_formComponentShown @@ -274,15 +231,12 @@ // Variables declaration - do not modify//GEN-BEGIN:variables private javax.swing.JButton jButton_Custom; - private javax.swing.JLabel jLabel_Label; private javax.swing.JLabel jLabel_MaxLabel; private javax.swing.JLabel jLabel_MaxValue; private javax.swing.JLabel jLabel_MinLabel; private javax.swing.JLabel jLabel_MinValue; private javax.swing.JLabel jLabel_Value; private javax.swing.JPanel jPanel_ShowGradient; - private javax.swing.JTextField jTextField_MaxLabel; - private javax.swing.JTextField jTextField_MinLabel; // End of variables declaration//GEN-END:variables private final double minValue; ------------------------------------------------------------------------------ Monitor 25 network devices or servers for free with OpManager! OpManager is web-based network management software that monitors network devices and physical & virtual servers, alerts via email & sms for fault. Monitor 25 devices for free with no restriction. Download now http://ad.doubleclick.net/ddm/clk/292181274;119417398;o _______________________________________________ Jump-pilot-devel mailing list Jump-pilot-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/jump-pilot-devel