From fd0e9b1597410aae43cf964af9a50ab8706ec429 Mon Sep 17 00:00:00 2001 From: Lukas Matena Date: Fri, 16 Feb 2024 12:30:06 +0100 Subject: [PATCH] Changed the way random numbers are generated --- src/libslic3r/Model.hpp | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/src/libslic3r/Model.hpp b/src/libslic3r/Model.hpp index 346d585235..f85470e431 100644 --- a/src/libslic3r/Model.hpp +++ b/src/libslic3r/Model.hpp @@ -35,6 +35,7 @@ #include #include #include +#include namespace cereal { class BinaryInputArchive; @@ -233,6 +234,7 @@ private: friend class ModelObject; }; + class CutObjectBase { size_t m_unique_id; // 0 = invalid @@ -249,7 +251,12 @@ public: m_check_sum = 1; m_connectors_cnt = 0; } - void init() { m_unique_id = 1 + rand(); } + void init() { + std::random_device rd; + std::mt19937_64 mt(rd() + time(NULL)); + std::uniform_int_distribution dist(1, std::numeric_limits::max()); + m_unique_id = dist(mt); + } bool has_same_id(const CutObjectBase& rhs) const { return id() == rhs.id(); } bool is_equal(const CutObjectBase& rhs) const { return id() == rhs.id() && check_sum() == rhs.check_sum() &&