游戏编程中的人工智能技术

2020-04-27  本文已影响0人  yumxuanyi

一个随机数生成器 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);
  }
上一篇 下一篇

猜你喜欢

热点阅读