Pedal Point源码发布及说明(4)

王朝vc·作者佚名  2006-01-09
宽屏版  字体: |||超大  

本文属spanzhang原创,其blog地址为:http://blog.csdn.net/spanzhang。引用或转贴请注明出处,谢谢!!

/*/////////////////////////////////////////////////////////////////////

文件:stdAfx.cpp

描述:PedalPoint预编译实现文件

作者:张友邦

时间:2004-09-02

声明:本文件系作者辛苦熬夜的产物,任何人使用本文件请保留本描述文本。

历史:

/*/////////////////////////////////////////////////////////////////////

//////////////////////////////////////////////////////////////////////

#include"stdAfx.h"

namespace pb

{

//////////////////////////////////////////////////////////////////////

HANDLE eventMutex;

//返回一个[0,1]随机数

float rnd()

{

return (float)(::rand()) / (float)(RAND_MAX);

}

//返回一个[0,max]随机数

float rnd(float max)

{

return rnd() * max;

}

//返回一个[-1,1]之间的随机数

float rand()

{

return ((float)(::rand()) / (float)(RAND_MAX)) * 2.0f - 1.0f;

}

float rand(float max)

{

return rand() * max;

}

//返回一个随机的符号

float randSign()

{

return (::rand()>RAND_MAX/2?-1.0f:1.0f);

}

//符号函数

int sign(float num)

{

if(num==0.0)

return 0;

else

return (num>0.0f?1:-1);

}

//用时间来初始化随机数

void initRandom()

{

time_t ltime;

time(&ltime);

srand(ltime % 1000);

::rand();

}

float trwv(float r)

{

r = fabs( .5 * r );

r = 2 * ( r - floor( r ) );

if ( r > 1 )

r = 2 - r;

return r;

}

float wrap(float r)

{

return r - floor(r);

}

float sqr(float r)

{

return r * r;

}

float clip(float r)

{

if ( r < 0 ) r = 0; else if ( r > 1 ) r = 1;

return r;

}

float sgn(float r)

{

return ( r >= 0 ) ? 1 : -1;

}

float pos(float r)

{

if ( r < 0 ) return 0;

return r;

}

float sqwv(float r)

{

return ( r >= -1 && r <= 1 ) ? 1 : 0;

}

int trnc(float r)

{

return int(r);

}

//绕一个特定点旋转特定的角度

void rotate(int& x, int& y, int cx, int cy, float theta)

{

int xx = x - cx;

int yy = y - cy;

x = xx * cos(theta) - yy * sin(theta) + cx;

y = xx * sin(theta) + yy * cos(theta) + cy;

}

//////////////////////////////////////////////////////////////////////

};//namespace pb

//////////////////////////////////////////////////////////////////////

//End of this file.

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
© 2005- 王朝网络 版权所有