From 0e7c45eb0238bf83cbe980cb7dcefecde7612254 Mon Sep 17 00:00:00 2001 From: kazu Date: Tue, 26 Apr 2016 15:14:10 +0200 Subject: [PATCH] switched random generator --- code/particles/MyInitializer.h | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/code/particles/MyInitializer.h b/code/particles/MyInitializer.h index 79ea62e..4fd9be7 100755 --- a/code/particles/MyInitializer.h +++ b/code/particles/MyInitializer.h @@ -5,6 +5,7 @@ #include "MyState.h" #include +#include class MyInitializer : public K::ParticleFilterInitializer { @@ -35,13 +36,13 @@ public: virtual void initialize(std::vector>& particles) override { - std::minstd_rand gen; - std::uniform_int_distribution<> dist(0, grid.getNumNodes()); - std::uniform_real_distribution distHead(0, M_PI*2); + Distribution::Uniform distIdx(0, grid.getNumNodes()-1); + Distribution::Uniform distHead(0, M_PI*2); for (K::Particle& p : particles) { - MyGridNode& n = grid[dist(gen)]; + const int idx = distIdx.draw(); + MyGridNode& n = grid[idx]; //p.state.pCur = Point3(x_cm, y_cm, z_cm); //GridPoint gp(p.state.pCur.x, p.state.pCur.y, p.state.pCur.z); @@ -51,7 +52,7 @@ public: p.state.walkState.node = &n; p.state.pOld = p.state.pCur; - p.state.walkState.heading = distHead(gen); + p.state.walkState.heading = distHead.draw(); p.state.hPa = 0; }