Robowflex  v0.1
Making MoveIt Easy
random.h File Reference
#include <random>
#include <robowflex_library/constants.h>
#include <Eigen/Core>

Go to the source code of this file.

Namespaces

 robowflex
 Main namespace. Contains all library classes and functions.
 
 robowflex::RNG
 Collection of methods relating to random sampling.
 

Functions

void robowflex::RNG::setSeed (unsigned int seed)
 Set the random seed of the underlying generator. More...
 
double robowflex::RNG::uniform01 ()
 Generate a random real in [0,1). More...
 
double robowflex::RNG::uniformReal (double lower_bound, double upper_bound)
 Generate a random real within given bounds: [lower_bound, upper_bound) More...
 
int robowflex::RNG::uniformInt (int lower_bound, int upper_bound)
 Generate a random integer within given bounds: [lower_bound, upper_bound) More...
 
bool robowflex::RNG::uniformBool ()
 Generate a random boolean. More...
 
double robowflex::RNG::gaussian01 ()
 
double robowflex::RNG::gaussian (double mean, double stddev)
 Generate a random real using a normal distribution with given mean and standard deviation. More...
 
double robowflex::RNG::gaussian (double stddev)
 Generate a random real using a normal distribution with zero mean and given standard deviation. More...
 
Eigen::Vector3d robowflex::RNG::uniformRPY (const Eigen::Vector3d &lbound, const Eigen::Vector3d &ubound)
 Uniform random sampling of Euler roll-pitch-yaw angles within lower bound lbound and upper bound ubound computed value has the order (roll, pitch, yaw). More...
 
Eigen::Vector3d robowflex::RNG::uniformRPY (const Eigen::Vector3d &bounds)
 Uniform random sampling of Euler roll-pitch-yaw angles within lower bound lbound and upper bound ubound computed value has the order (roll, pitch, yaw). More...
 
Eigen::Vector3d robowflex::RNG::unifromRPY ()
 Uniform random sampling of Euler roll-pitch-yaw angles, roll, yaw in range [-pi, pi) and pitch in range[-pi/2, pi/2) computed value has the order (roll, pitch, yaw). More...
 
Eigen::Vector3d robowflex::RNG::uniformVec (const Eigen::Vector3d &lbound, const Eigen::Vector3d &ubound)
 Generate a uniform real vector within given bounds: [lower_bound, upper_bound) More...
 
Eigen::Vector3d robowflex::RNG::uniformVec (const Eigen::Vector3d &bounds)
 Generate a uniform real vector within given bounds: [-bounds, bounds) More...
 
Eigen::Vector3d robowflex::RNG::gaussianVec (const Eigen::Vector3d &mean, const Eigen::Vector3d &stddev)
 Generate a random real vector using a normal distribution with given mean and standard deviation. More...
 
Eigen::Vector3d robowflex::RNG::gaussianVec (const Eigen::Vector3d &stddev)
 Generate a random real vector using a normal distribution with mean zero and standard deviation. More...
 
template<typename Iter >
Iter robowflex::RNG::uniformSample (Iter start, Iter end)
 Choose a random element between start and end. More...
 
template<typename Type >
Typerobowflex::RNG::uniformSample (std::vector< Type > &vector)
 Choose a random element from a vector. More...