| From 3eb9987b02cc10b93e09219ddc86aa6be5f10177 Mon Sep 17 00:00:00 2001 |
| From: tybeller <ty.c.beller@gmail.com> |
| Date: Fri, 30 Sep 2022 16:13:41 -0400 |
| Subject: [PATCH] removed RandomNumberGenerator class, included <random>, |
| replaced random_shuffle with shuffle and used mersenne twister engine to |
| generate uniform random bit generator for the shuffle. |
| |
| Upstream-Status: Backport [https://github.com/matplotlib/matplotlib/commit/601d92a8850] |
| Signed-off-by: Khem Raj <raj.khem@gmail.com> |
| --- |
| src/tri/_tri.cpp | 20 ++++---------------- |
| 1 file changed, 4 insertions(+), 16 deletions(-) |
| |
| diff --git a/src/tri/_tri.cpp b/src/tri/_tri.cpp |
| index b7a87783de..6e639eea44 100644 |
| --- a/src/tri/_tri.cpp |
| +++ b/src/tri/_tri.cpp |
| @@ -12,6 +12,7 @@ |
| |
| #include <algorithm> |
| #include <set> |
| +#include <random> |
| |
| |
| TriEdge::TriEdge() |
| @@ -1465,8 +1466,8 @@ TrapezoidMapTriFinder::initialize() |
| _tree->assert_valid(false); |
| |
| // Randomly shuffle all edges other than first 2. |
| - RandomNumberGenerator rng(1234); |
| - std::random_shuffle(_edges.begin()+2, _edges.end(), rng); |
| + std::mt19937 rng(1234); |
| + std::shuffle(_edges.begin()+2, _edges.end(), rng); |
| |
| // Add edges, one at a time, to tree. |
| size_t nedges = _edges.size(); |
| @@ -2055,17 +2056,4 @@ TrapezoidMapTriFinder::Trapezoid::set_upper_right(Trapezoid* upper_right_) |
| upper_right = upper_right_; |
| if (upper_right != 0) |
| upper_right->upper_left = this; |
| -} |
| - |
| - |
| - |
| -RandomNumberGenerator::RandomNumberGenerator(unsigned long seed) |
| - : _m(21870), _a(1291), _c(4621), _seed(seed % _m) |
| -{} |
| - |
| -unsigned long |
| -RandomNumberGenerator::operator()(unsigned long max_value) |
| -{ |
| - _seed = (_seed*_a + _c) % _m; |
| - return (_seed*max_value) / _m; |
| -} |
| +} |
| \ No newline at end of file |
| -- |
| 2.39.0 |
| |