From 5a775df47932f4e19c448ba7584c7bf44708714f Mon Sep 17 00:00:00 2001 From: HYL123698745 <1252347619@qq.com> Date: Fri, 30 Jul 2021 10:31:43 +0800 Subject: [PATCH 1/2] =?UTF-8?q?=E3=80=90=E4=BF=AE=E6=94=B9=E5=86=85?= =?UTF-8?q?=E5=AE=B9=E3=80=91=E5=BB=BA=E7=AB=8B=E9=A1=B9=E7=9B=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../ohosplot/demos/slice/ECGExampleSlice.java | 13 ++++++++--- .../demos/slice/ListViewAbilitySlice.java | 22 +++++++++++-------- .../demos/slice/ScatterPlotAbilitySlice.java | 13 +++++++++-- .../java/com/ohosplot/ui/LayoutMetric.java | 6 +++++ 4 files changed, 40 insertions(+), 14 deletions(-) diff --git a/entry/src/main/java/com/ohosplot/demos/slice/ECGExampleSlice.java b/entry/src/main/java/com/ohosplot/demos/slice/ECGExampleSlice.java index 221a3d4..d335274 100644 --- a/entry/src/main/java/com/ohosplot/demos/slice/ECGExampleSlice.java +++ b/entry/src/main/java/com/ohosplot/demos/slice/ECGExampleSlice.java @@ -22,12 +22,13 @@ import com.ohosplot.xy.AdvancedLineAndPointRenderer; import com.ohosplot.xy.BoundaryMode; import com.ohosplot.xy.XYPlot; import com.ohosplot.xy.XYSeries; - import ohos.aafwk.ability.AbilitySlice; import ohos.aafwk.content.Intent; import ohos.agp.render.Paint; import java.lang.ref.WeakReference; +import java.security.NoSuchAlgorithmException; +import java.security.SecureRandom; /** * ECGExampleSlice @@ -149,6 +150,12 @@ public class ECGExampleSlice extends AbilitySlice { @Override public void run() { try { + SecureRandom random = null; + try { + random = SecureRandom.getInstance("SHA1PRNG"); + } catch (NoSuchAlgorithmException e) { + e.printStackTrace(); + } while (keepRunning) { if (latestIndex >= data.length) { latestIndex = 0; @@ -157,10 +164,10 @@ public class ECGExampleSlice extends AbilitySlice { // generate some random data: if (latestIndex % blipInteral == 0) { // insert a "blip" to simulate a heartbeat: - data[latestIndex] = (Math.random() * 10) + 3; + data[latestIndex] = (random.nextDouble() * 10) + 3; } else { // insert a random sample: - data[latestIndex] = Math.random() * 2; + data[latestIndex] = random.nextDouble() * 2; } if (latestIndex < data.length - 1) { diff --git a/entry/src/main/java/com/ohosplot/demos/slice/ListViewAbilitySlice.java b/entry/src/main/java/com/ohosplot/demos/slice/ListViewAbilitySlice.java index cb9d19e..1a6ef7b 100644 --- a/entry/src/main/java/com/ohosplot/demos/slice/ListViewAbilitySlice.java +++ b/entry/src/main/java/com/ohosplot/demos/slice/ListViewAbilitySlice.java @@ -20,16 +20,15 @@ import com.ohosplot.demos.ResourceTable; import com.ohosplot.ui.SeriesBundle; import com.ohosplot.util.PixelUtils; import com.ohosplot.xy.*; - import ohos.aafwk.ability.AbilitySlice; import ohos.aafwk.content.Intent; import ohos.agp.components.*; import ohos.agp.utils.Color; +import java.security.NoSuchAlgorithmException; import java.security.SecureRandom; import java.util.ArrayList; import java.util.List; -import java.util.Random; /** * ListViewAbilitySlice @@ -69,14 +68,19 @@ public class ListViewAbilitySlice extends AbilitySlice { for (int j = 0; j < NUM_POINTS_PER_SERIES; j++) { nums.add(generator.nextFloat()); } + SecureRandom random = null; + try { + random = SecureRandom.getInstance("SHA1PRNG"); + } catch (NoSuchAlgorithmException e) { + e.printStackTrace(); + } + double rl = random.nextDouble(); + double gl = random.nextDouble(); + double bl = random.nextDouble(); - double rl = Math.random(); - double gl = Math.random(); - double bl = Math.random(); - - double rp = Math.random(); - double gp = Math.random(); - double bp = Math.random(); + double rp = random.nextDouble(); + double gp = random.nextDouble(); + double bp = random.nextDouble(); LineAndPointFormatter lpf = new LineAndPointFormatter( Color.rgb(Double.valueOf(rl * 255).intValue(), diff --git a/entry/src/main/java/com/ohosplot/demos/slice/ScatterPlotAbilitySlice.java b/entry/src/main/java/com/ohosplot/demos/slice/ScatterPlotAbilitySlice.java index bbb490a..0fd34df 100644 --- a/entry/src/main/java/com/ohosplot/demos/slice/ScatterPlotAbilitySlice.java +++ b/entry/src/main/java/com/ohosplot/demos/slice/ScatterPlotAbilitySlice.java @@ -23,6 +23,9 @@ import ohos.aafwk.ability.AbilitySlice; import ohos.aafwk.content.Intent; import ohos.agp.utils.Color; +import java.security.NoSuchAlgorithmException; +import java.security.SecureRandom; + /** * ScatterPlotAbilitySlice * @@ -75,10 +78,16 @@ public class ScatterPlotAbilitySlice extends AbilitySlice { */ private XYSeries generateScatter(String title, int numPoints, RectRegion region) { SimpleXYSeries series = new SimpleXYSeries(title); + SecureRandom random = null; + try { + random = SecureRandom.getInstance("SHA1PRNG"); + } catch (NoSuchAlgorithmException e) { + e.printStackTrace(); + } for (int i = 0; i < numPoints; i++) { series.addLast( - region.getMinX().doubleValue() + (Math.random() * region.getWidth().doubleValue()), - region.getMinY().doubleValue() + (Math.random() * region.getHeight().doubleValue()) + region.getMinX().doubleValue() + (random.nextDouble() * region.getWidth().doubleValue()), + region.getMinY().doubleValue() + (random.nextDouble() * region.getHeight().doubleValue()) ); } return series; diff --git a/ohosplot_core/src/main/java/com/ohosplot/ui/LayoutMetric.java b/ohosplot_core/src/main/java/com/ohosplot/ui/LayoutMetric.java index cce31f4..845414b 100644 --- a/ohosplot_core/src/main/java/com/ohosplot/ui/LayoutMetric.java +++ b/ohosplot_core/src/main/java/com/ohosplot/ui/LayoutMetric.java @@ -66,6 +66,12 @@ abstract class LayoutMetric { this.value = value; } + /** + * getPixelValue + * + * @param size + * @return float + */ public abstract float getPixelValue(float size); public LayoutType getLayoutType() { -- Gitee From 8265dd72c3f8273e949bf7bc6f1fe7046f8e8f87 Mon Sep 17 00:00:00 2001 From: HYL123698745 <1252347619@qq.com> Date: Fri, 30 Jul 2021 10:38:02 +0800 Subject: [PATCH 2/2] =?UTF-8?q?=E3=80=90=E4=BF=AE=E6=94=B9=E5=86=85?= =?UTF-8?q?=E5=AE=B9=E3=80=91=E6=8F=90=E4=BA=A4=E4=BB=A3=E7=A0=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../demos/slice/XYPlotWithBgImgAbilitySlice.java | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/entry/src/main/java/com/ohosplot/demos/slice/XYPlotWithBgImgAbilitySlice.java b/entry/src/main/java/com/ohosplot/demos/slice/XYPlotWithBgImgAbilitySlice.java index 826c3e6..9c32d9f 100644 --- a/entry/src/main/java/com/ohosplot/demos/slice/XYPlotWithBgImgAbilitySlice.java +++ b/entry/src/main/java/com/ohosplot/demos/slice/XYPlotWithBgImgAbilitySlice.java @@ -19,6 +19,8 @@ import ohos.media.image.PixelMap; import ohos.media.image.common.Size; import java.io.IOException; +import java.security.NoSuchAlgorithmException; +import java.security.SecureRandom; import java.text.DecimalFormat; import java.util.Arrays; @@ -109,9 +111,16 @@ public class XYPlotWithBgImgAbilitySlice extends AbilitySlice { xVals[0] = 0; yVals[0] = 0; + SecureRandom random = null; + try { + random = SecureRandom.getInstance("SHA1PRNG"); + } catch (NoSuchAlgorithmException e) { + e.printStackTrace(); + } + for (int i = 1; i < SERIES_LEN; i += 1) { - xVals[i] = xVals[i - 1] + (int) (Math.random() * i); - yVals[i] = (int) (Math.random() * 140); + xVals[i] = xVals[i - 1] + (int) (random.nextDouble() * i); + yVals[i] = (int) (random.nextDouble() * 140); } return new SimpleXYSeries( -- Gitee