Revision: 6678 http://sourceforge.net/p/jump-pilot/code/6678 Author: ma15569 Date: 2021-12-02 13:50:04 +0000 (Thu, 02 Dec 2021) Log Message: ----------- Correct wrong distribution of raster values in the raster legend (single values and intervals panels). TODO To implement into OpenJUMP2
Modified Paths: -------------- core/trunk/src/org/openjump/core/rasterimage/styler/Utils.java core/trunk/src/org/openjump/core/rasterimage/styler/ui/SingleValuesPanel.java Modified: core/trunk/src/org/openjump/core/rasterimage/styler/Utils.java =================================================================== --- core/trunk/src/org/openjump/core/rasterimage/styler/Utils.java 2021-12-02 05:52:46 UTC (rev 6677) +++ core/trunk/src/org/openjump/core/rasterimage/styler/Utils.java 2021-12-02 13:50:04 UTC (rev 6678) @@ -2,6 +2,7 @@ import java.awt.image.DataBuffer; import java.awt.image.Raster; +import java.util.Arrays; import java.util.HashSet; import java.util.Iterator; import java.util.Set; @@ -13,6 +14,8 @@ */ public class Utils { + // [Giuseppe Aruta 2021-03.12] added sorting of data + // TODO this method should be implemented in the class RasterImageLayer public static double[] purgeNoData(Raster rasterData, RasterImageLayer rasterImageLayer) { /* Purge no data and take only one sample per value */ @@ -48,7 +51,7 @@ values[p] = (Double) iter.next(); p++; } - + Arrays.sort(values); return values; } Modified: core/trunk/src/org/openjump/core/rasterimage/styler/ui/SingleValuesPanel.java =================================================================== --- core/trunk/src/org/openjump/core/rasterimage/styler/ui/SingleValuesPanel.java 2021-12-02 05:52:46 UTC (rev 6677) +++ core/trunk/src/org/openjump/core/rasterimage/styler/ui/SingleValuesPanel.java 2021-12-02 13:50:04 UTC (rev 6678) @@ -180,24 +180,27 @@ } + //[Giuseppe Aruta 2021-03.12] Removed sorting has it is + //already made in the method Utils.purgeNoData private void findUniqueValues() { - Set<Double> uniqueValues_m = new TreeSet<Double>(); + // Set<Double> uniqueValues_m = new TreeSet<Double>(); integerValues = true; for(int v=0; v<rasterDataNoNull.length; v++) { - uniqueValues_m.add(rasterDataNoNull[v]); + // uniqueValues_m.add(rasterDataNoNull[v]); if(rasterDataNoNull[v] != (int) rasterDataNoNull[v]) { integerValues = false; + break; } } - rasterDataNoNull = new double[uniqueValues_m.size()]; - Iterator iter = uniqueValues_m.iterator(); - int pos = 0; - while(iter.hasNext()) { - double value = (Double) iter.next(); - rasterDataNoNull[pos++] = value; - } + // rasterDataNoNull = new double[uniqueValues_m.size()]; + // Iterator iter = uniqueValues_m.iterator(); + // int pos = 0; + // while(iter.hasNext()) { + // double value = (Double) iter.next(); + // rasterDataNoNull[pos++] = value; + // } } _______________________________________________ Jump-pilot-devel mailing list Jump-pilot-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/jump-pilot-devel