hum.cpp

来自「人工神经网络实现的扫雷机程序,用遗传算法进化网络的权重效果很好」· C++ 代码 · 共 58 行

CPP
58
字号

#include"hum.h"
hum::hum()
{
		pos= SVector2D((RandFloat() * CParams::WindowWidth), 
			(RandFloat() * CParams::WindowHeight));
		speed=1;
		scale=5;
		lookat=SVector2D(RandomClamped(),RandomClamped());
		Vec2DNormalize(lookat);
		lag=0;
		run=100;
}
void	hum::worldtransform(vector<SPoint> &hum)
{


	//create the world transformation matrix
	C2DMatrix matTransform;
	
	//scale
	matTransform.Scale(scale, scale);
	
	//rotate
//	matTransform.Rotate(m_dRotation);
	
	//and translate
	matTransform.Translate(pos.x, pos.y);
	
	//now transform the ships vertices
	matTransform.TransformSPoints(hum);


}
void	hum::update()
{	
	if(!(run--))
	{	if(RandFloat()>0.2)
		{
				lookat=SVector2D(RandomClamped(),RandomClamped());
				Vec2DNormalize(lookat);
		}
		else
		{
			lag=50;
		}
	}
	else
	{
		pos+=lookat*speed;

	}
		if (pos.x > CParams::WindowWidth) pos.x = 0;
	if (pos.x < 0) pos.x = CParams::WindowWidth;
	if (pos.y > CParams::WindowHeight) pos.y = 0;
	if (pos.y < 0) pos.y = CParams::WindowHeight;

}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?