一个随机数生成器 math_BullardGenerator
#include <math_BullardGenerator.hxx>
static BullardGenerator aRand;
inline int RandInt(int x,int y)
{
return aRand.NextInt() % (y - x + 1) + x;
}
inline double RandFloat()
{
return aRand.NextReal();
}
inline bool RandBool()
{
if(RandInt(0 , 1))
{
return true;
}
else
{
return false;
}
}
//返回一个从(-1,1)之间的随机浮点数
inline double RandomClamped()
{
return RandFloat() - RandFloat();
}
//int to string function
string itos(int arg);
另一个随机数生成器 cv::RNG
#include <opencv2/core/core.hxx>
using namespace cv;
int main()
{
cv::RNG aRng = theRNG();
int itData= aRng(2);//()操作符 返回一个0 - N-1的均匀分布值 同uniform
int iData= aRng.uniform(0 , 2); //均匀分布
float dData= aRng.uniform(0.0 , 2.0);
float fData= aRng.uniform(0.0f , 2.0f);
}
网友评论