一个遗传算法的VC版本

源代码在线查看: control.h

软件大小: 148 K
上传用户: wanghao891207
关键词: 算法 版本
下载地址: 免注册下载 普通下载 VIP

相关代码

				#pragma once
				#include "head.h"
				#include "map.h"
				#include "defaultmap.h"
				#include "roundmap.h"
				#include "connectline.h"
				#include "ga.h"
				#include "resource.h"
				
				class Control
				{
				public:
					Control( );                       //初始化数据
					void welcome( HWND hwnd);           //显示帮助(开始)
					void help  ( HWND hwnd);            //完整的帮助
				
					UINT Control::GetMapStyle( )           ;             //获得当前地图类型
					void SetMapStyle(HWND hwnd,WPARAM wParam);           //设置地图类型
				void Control::SetGaInformation(float fpcross ,float fpmutation , int fpopsize , int fmaxgen );//交叉率变异率种群大小最大世代数
				
					void CleanAllUpDate( );                        //清除所有点
					void DisPlay( HWND hwnd ,const POINT& point,bool);    //显示其它与鼠标位置 或地图相关信息
				
				   void DrawAllPoint( HWND hwnd ) ;                      //画出所有的点 
				   void DrawMap(HWND hwnd,HDC hdc ) ;                    //画地图
				   void DrawTruePoint( HWND hwnd ,const POINT& point  );   //画点
				   void DrawFalsePoint(  HWND hwnd ,const POINT& point );  //去掉点
				
				   void DrawLineWait( )  ;                      //画线的准备
				   void DrawLine  (HWND hwnd );                          //画线
				
				   float Getpcross   ( ) { return pcross;  }
				   float Getpmutation( ) { return pmutation;}
				   int Getpopsize  ( )   { return popsize;  }
				   int Getmaxgen   ( )   { return maxgen  ; }
				   
				   void SetPower(bool n) { power=n ; }
				   bool GetPower( )    { return power;}
				private:
					UINT  MapStyle    ;      //标志当前地图类型
				
					float pcross    ;      //交叉率
					float pmutation ;      //变异率
					int   popsize     ;    //种群大小
					int   maxgen      ;    //最大世代数	
				
					bool power     ;
					
					DefaultMap DefaultMapObject;
					RoundMap   RoundMapObject;
					Line      LineObject;
					Map      *MapObject;
				};
				/////////////////////////////     初始化数据   ///////////////////////////////
				inline Control::Control( ):pcross(0.6),pmutation (0.2),popsize (300)
					,maxgen(300 ),MapObject( &DefaultMapObject),MapStyle(ID_DefaultMap),power(1)
				{	return; }
				
							

相关资源