亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? mainfrm.cpp

?? 我寫的迷宮與搜路算法,自動生成隨即迷宮,然后自動從起點到終點運動
?? CPP
字號:
// MainFrm.cpp : implementation of the CMainFrame class
//

#include "stdafx.h"
#include "WMaze.h"
#include"headfile.h"
#include "MainFrm.h"
#include <list>
#include<iterator>
using namespace std;

#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif

/////////////////////////////////////////////////////////////////////////////
// CMainFrame

IMPLEMENT_DYNCREATE(CMainFrame, CFrameWnd)

BEGIN_MESSAGE_MAP(CMainFrame, CFrameWnd)
	//{{AFX_MSG_MAP(CMainFrame)
	ON_WM_CREATE()
	ON_COMMAND(ID_START, OnStart)
	//}}AFX_MSG_MAP
END_MESSAGE_MAP()

static UINT indicators[] =
{
	ID_SEPARATOR,           // status line indicator
	ID_INDICATOR_CAPS,
	ID_INDICATOR_NUM,
	ID_INDICATOR_SCRL,
};

/////////////////////////////////////////////////////////////////////////////
// CMainFrame construction/destruction

CMainFrame::CMainFrame()
{
	// TODO: add member initialization code here
	
}

CMainFrame::~CMainFrame()
{
}

int CMainFrame::OnCreate(LPCREATESTRUCT lpCreateStruct)
{
	if (CFrameWnd::OnCreate(lpCreateStruct) == -1)
		return -1;
	
	if (!m_wndToolBar.CreateEx(this, TBSTYLE_FLAT, WS_CHILD | WS_VISIBLE | CBRS_TOP
		| CBRS_GRIPPER | CBRS_TOOLTIPS | CBRS_FLYBY | CBRS_SIZE_DYNAMIC) ||
		!m_wndToolBar.LoadToolBar(IDR_MAINFRAME))
	{
		TRACE0("Failed to create toolbar\n");
		return -1;      // fail to create
	}

	if (!m_wndStatusBar.Create(this) ||
		!m_wndStatusBar.SetIndicators(indicators,
		  sizeof(indicators)/sizeof(UINT)))
	{
		TRACE0("Failed to create status bar\n");
		return -1;      // fail to create
	}

	// TODO: Delete these three lines if you don't want the toolbar to
	//  be dockable
	m_wndToolBar.EnableDocking(CBRS_ALIGN_ANY);
	EnableDocking(CBRS_ALIGN_ANY);
	DockControlBar(&m_wndToolBar);

	return 0;
}

BOOL CMainFrame::PreCreateWindow(CREATESTRUCT& cs)
{
	if( !CFrameWnd::PreCreateWindow(cs) )
		return FALSE;
	// TODO: Modify the Window class or styles here by modifying
	//  the CREATESTRUCT cs
    cs.cx = 820;
    cs.cy = 800;
	return TRUE;
}

/////////////////////////////////////////////////////////////////////////////
// CMainFrame diagnostics

#ifdef _DEBUG
void CMainFrame::AssertValid() const
{
	CFrameWnd::AssertValid();
}

void CMainFrame::Dump(CDumpContext& dc) const
{
	CFrameWnd::Dump(dc);
}

#endif //_DEBUG

/////////////////////////////////////////////////////////////////////////////
// CMainFrame message handlers



void CMainFrame::OnStart() 
{
	// TODO: Add your command handler code here
//	MessageBox("fuck");
	CClientDC dc(this);
	CDC mdc;
	mdc.CreateCompatibleDC(&dc);
//	dc.FillSolidRect(347,FOOT+1,LSIZE-2,LSIZE-2,RGB(255,0,0));
//	for(int i=0;i<100;i++){
	int Top=20;//(int)(((float)rand() / (float)RAND_MAX) * 2 )+1;
	int Bottom=20;//(int)(((float)rand() / (float)RAND_MAX) * 2) +1;
	Find_Road2(Top,Bottom);
//	}
}


void CMainFrame::Find_Road1(int Top,int Bottom){
	CClientDC dc(this);
	CDC mdc;
	mdc.CreateCompatibleDC(&dc);
	int x=HEAD+(LSIZE-1)*Bottom+3;
	int y=HEAD+(LSIZE)*40+1;
	dc.FillSolidRect(x,y,13,13,RGB(0,255,0));
	for(;y-LSIZE+1>HEAD-LSIZE;){
		switch((int)(((float)rand() / (float)RAND_MAX) * 4)){
			case 0:
				if(dc.GetPixel(x+5,y+LSIZE-2)!=0)break;
				dc.FillSolidRect(x,y+LSIZE-1,13,13,RGB(255,0,0));
				dc.FillSolidRect(x,y,13,13,RGB(0,255,0));
				y=y+LSIZE-1;
				break;
			case 1:
				if(dc.GetPixel(x+LSIZE-2,y+5)!=0)break;
				dc.FillSolidRect(x+LSIZE-1,y,13,13,RGB(255,0,0));
				dc.FillSolidRect(x,y,13,13,RGB(0,255,0));
				x=x+LSIZE-1;
				break;
			case 2:
				if(dc.GetPixel(x-1,y+5)!=0)break;
				dc.FillSolidRect(x-LSIZE+1,y,13,13,RGB(255,0,0));
				dc.FillSolidRect(x,y,13,13,RGB(0,255,0));
				x=x-LSIZE+1;
				break;
			default:
				if(dc.GetPixel(x+5,y-1)!=0)break;
				dc.FillSolidRect(x,y-LSIZE+1,13,13,RGB(255,0,0));
				dc.FillSolidRect(x,y,13,13,RGB(0,255,0));
				y=y-LSIZE+1;
				break;
		}
	}
}


void CMainFrame::Find_Road2(int Top,int Bottom){
	CClientDC dc(this);
	CDC mdc;
	mdc.CreateCompatibleDC(&dc);
	int x=HEAD+(LSIZE-1)*Bottom+3;
	int y=HEAD+(LSIZE)*40+1;
	list<int *>::iterator i;
	list<int *>::iterator j;
	list< int * > MyList;
	MyList.clear();

	int *first=new int[6];
	first[0]=x;
	first[1]=y;
	dc.GetPixel(x+5,y-1)==0?first[2]=0:first[2]=1;
	dc.GetPixel(x+5,y+LSIZE-2)==0?first[3]=0:first[3]=1;
	dc.GetPixel(x-1,y+5)==0?first[4]=0:first[4]=1;
	dc.GetPixel(x+LSIZE-2,y+5)==0?first[5]=0:first[5]=1;
	MyList.push_back(first);
	dc.FillSolidRect(x,y,13,13,RGB(0,255,0));

	for(;y-LSIZE+1>HEAD-LSIZE;){
		i=MyList.end();
		i--;
		int *temp=*i;
		x=temp[0];
		y=temp[1];
		for (j=MyList.begin();j!=MyList.end(); ++j){
			int *u=*j;
			if(u[0]==x&&u[1]==y-LSIZE+1&&temp[2]==0){
				temp[2]=1;
				u[3]=1;
			}
			if(u[0]==x&&u[1]==y+LSIZE-1&&temp[3]==0){
				temp[3]=1;
				u[2]=1;
			}
			if(u[0]==x-LSIZE+1&&u[1]==y&&temp[4]==0){
				temp[4]=1;
					u[5]=1;
			}
			if(u[0]==x+LSIZE-1&&u[1]==y&&temp[5]==0){
				temp[5]=1;
					u[4]=1;
			}
		}


		if(temp[2]!=0&&temp[3]!=0&&temp[4]!=0&&temp[5]!=0){
			MyList.remove(temp);
			if(MyList.size()==0){
				MessageBox("無路可走");	
				return;
			}	
		}
		else if(temp[2]==0){
//			dc.FillSolidRect(x,y,13,13,RGB(255,0,0));
			temp[2]=1;
			y=y-LSIZE+1;
			int *listeam=new int[6];
			listeam[0]=x;
			listeam[1]=y;
			dc.GetPixel(x+5,y-1)==0?listeam[2]=0:listeam[2]=1;
			listeam[3]=1;
			dc.GetPixel(x-1,y+5)==0?listeam[4]=0:listeam[4]=1;
			dc.GetPixel(x+LSIZE-2,y+5)==0?listeam[5]=0:listeam[5]=1;
			MyList.push_back(listeam);
//			dc.FillSolidRect(x,y,13,13,RGB(0,255,0));
		}


		 else if(temp[5]==0){
//			dc.FillSolidRect(x,y,13,13,RGB(255,0,0));
			temp[5]=1;
			x=x+LSIZE-1;
			int *listeam=new int[6];
			listeam[0]=x;
			listeam[1]=y;
			dc.GetPixel(x+5,y-1)==0?listeam[2]=0:listeam[2]=1;
			dc.GetPixel(x+5,y+LSIZE-2)==0?listeam[3]=0:listeam[3]=1;
			listeam[4]=1;
			dc.GetPixel(x+LSIZE-2,y+5)==0?listeam[5]=0:listeam[5]=1;
			MyList.push_back(listeam);
//			dc.FillSolidRect(x,y,13,13,RGB(0,255,0));
		}	
		 else if(temp[3]==0){
//			dc.FillSolidRect(x,y,13,13,RGB(255,0,0));
			temp[3]=1;
			y=y+LSIZE-1;
			int *listeam=new int[6];
			listeam[0]=x;
			listeam[1]=y;
			listeam[2]=1;
			dc.GetPixel(x+5,y+LSIZE-2)==0?listeam[3]=0:listeam[3]=1;
			dc.GetPixel(x-1,y+5)==0?listeam[4]=0:listeam[4]=1;
			dc.GetPixel(x+LSIZE-2,y+5)==0?listeam[5]=0:listeam[5]=1;
			MyList.push_back(listeam);

//			dc.FillSolidRect(x,y,13,13,RGB(0,255,0));			
		}
		 		else if(temp[4]==0){	
//			dc.FillSolidRect(x,y,13,13,RGB(255,0,0));
			temp[4]=1;
			x=x-LSIZE+1;
			int *listeam=new int[6];
			listeam[0]=x;
			listeam[1]=y;
			dc.GetPixel(x+5,y-1)==0?listeam[2]=0:listeam[2]=1;
			dc.GetPixel(x+5,y+LSIZE-2)==0?listeam[3]=0:listeam[3]=1;
			dc.GetPixel(x-1,y+5)==0?listeam[4]=0:listeam[4]=1;
			listeam[5]=1;
			MyList.push_back(listeam);
//			dc.FillSolidRect(x,y,13,13,RGB(0,255,0));
		}
	}

	for (j=MyList.begin();j!=MyList.end(); ++j){
		int *u=*j;			
		dc.FillSolidRect(u[0],u[1],13,13,RGB(0,255,0));
	}
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
一二三四区精品视频| 国产精品电影一区二区三区| 欧洲精品视频在线观看| 99精品国产99久久久久久白柏| 国产精品夜夜嗨| 国产成人精品网址| 国产电影精品久久禁18| 国产成人av电影免费在线观看| 精品一区二区三区免费毛片爱| 久久不见久久见免费视频1| 麻豆精品久久精品色综合| 精品无人码麻豆乱码1区2区 | 欧美日韩一区在线观看| 欧美性生活一区| 日韩一级黄色片| 久久伊99综合婷婷久久伊| 国产精品网站导航| 亚洲精品高清视频在线观看| 日韩avvvv在线播放| 精品一区二区在线免费观看| 成人永久aaa| 欧美在线观看一二区| 欧美电影一区二区三区| 精品久久国产老人久久综合| 久久久久久久久久美女| 亚洲特黄一级片| 亚洲成人资源网| 国产精品一二一区| 一本在线高清不卡dvd| 91精品国产免费久久综合| 26uuu色噜噜精品一区二区| 日韩一区欧美一区| 亚洲观看高清完整版在线观看| 麻豆91在线播放免费| 成人黄色av电影| 欧美人xxxx| 国产精品日韩成人| 日韩经典一区二区| 国产91高潮流白浆在线麻豆 | 中文字幕一区二区三区四区不卡| 一区二区在线观看不卡| 精品一二三四区| 在线亚洲高清视频| 国产亚洲欧美日韩在线一区| 午夜激情一区二区三区| 成人深夜在线观看| 日韩精品中午字幕| 一区二区三区加勒比av| 国产成人午夜视频| 91精品欧美久久久久久动漫 | 精品一区二区成人精品| 欧美三级资源在线| 亚洲三级视频在线观看| 国产一区二区伦理片| 欧美日韩日日摸| 亚洲欧美乱综合| 国产电影一区二区三区| 欧美xxxx在线观看| 奇米精品一区二区三区四区| 91国在线观看| 亚洲精品国产成人久久av盗摄| 国产成人免费视频网站 | 欧美视频在线一区二区三区 | 成人成人成人在线视频| 精品久久免费看| 久久精品久久精品| 91精品国产一区二区| 亚洲成av人影院在线观看网| 色国产综合视频| 亚洲黄色小视频| 99久精品国产| 亚洲丝袜精品丝袜在线| jlzzjlzz欧美大全| 亚洲视频在线观看一区| 99精品热视频| 亚洲另类色综合网站| 亚洲欧美日韩精品久久久久| 97精品国产露脸对白| 青青草97国产精品免费观看 | 精品国产乱码久久久久久久| 久久精品国产久精国产爱| 日韩美女一区二区三区四区| 久久成人免费网站| 久久免费精品国产久精品久久久久| 久久97超碰国产精品超碰| 精品国产乱码久久久久久久 | 国产在线不卡一区| 久久久亚洲国产美女国产盗摄| 国产一区二区在线视频| 久久蜜桃av一区精品变态类天堂| 国产精选一区二区三区| 国产精品色在线观看| 91丨porny丨蝌蚪视频| 一二三四区精品视频| 欧美情侣在线播放| 久久99国产精品久久| 国产精品国产三级国产| 91高清视频在线| 另类成人小视频在线| 欧美国产视频在线| 色又黄又爽网站www久久| 亚洲v中文字幕| 久久久久久久网| 色婷婷av一区二区三区gif | av午夜一区麻豆| 亚洲一区二区精品视频| 久久久亚洲精品一区二区三区| 不卡的av电影| 日本免费在线视频不卡一不卡二| 国产夜色精品一区二区av| 欧美综合在线视频| 国产一区二区三区综合| 一区二区三区中文字幕在线观看| 日韩一区二区在线看| 97久久人人超碰| 久久超级碰视频| 亚洲一二三级电影| 精品毛片乱码1区2区3区| 91在线观看视频| 美国三级日本三级久久99| 亚洲视频在线一区| 久久精子c满五个校花| 91成人免费在线| 丁香婷婷综合激情五月色| 日韩av网站在线观看| 亚洲免费观看高清完整| 国产偷国产偷精品高清尤物| 欧美丰满高潮xxxx喷水动漫| av爱爱亚洲一区| 国产精品一品视频| 伦理电影国产精品| 亚洲国产视频直播| 中文字幕乱码亚洲精品一区| 精品剧情v国产在线观看在线| 欧美视频第二页| 9i在线看片成人免费| 国产一区二区三区av电影| 污片在线观看一区二区| 亚洲激情五月婷婷| 亚洲天堂网中文字| 国产日韩欧美a| 久久日韩粉嫩一区二区三区 | 色综合网色综合| 国产成人精品aa毛片| 久久99精品国产麻豆不卡| 五月激情综合色| 天天综合天天综合色| 亚洲va韩国va欧美va| 亚洲不卡av一区二区三区| 亚洲综合区在线| 亚洲综合一区二区三区| 一区二区三区日韩| 一区二区在线观看免费视频播放 | 婷婷六月综合网| 天堂蜜桃一区二区三区| 午夜精品久久久久久久久久久| 亚洲伊人伊色伊影伊综合网| 一区二区三区精品视频| 亚洲国产精品一区二区久久恐怖片| 夜夜精品视频一区二区 | 国产精品乱人伦| 亚洲丝袜精品丝袜在线| 亚洲主播在线播放| 午夜视黄欧洲亚洲| 麻豆国产欧美日韩综合精品二区| 蜜臀精品久久久久久蜜臀| 精品亚洲免费视频| 懂色av中文字幕一区二区三区 | 69久久夜色精品国产69蝌蚪网| 88在线观看91蜜桃国自产| 亚洲精品一区二区三区四区高清| 久久久精品影视| 亚洲乱码国产乱码精品精可以看| 亚洲一区在线观看免费| 天天色综合成人网| 日韩欧美一区二区视频| 日韩欧美中文字幕公布| 日韩欧美成人激情| 136国产福利精品导航| 一区精品在线播放| 亚洲激情成人在线| 久久97超碰国产精品超碰| 国产一区二区三区免费观看| 国产乱色国产精品免费视频| 国产专区欧美精品| 成人免费黄色大片| 色婷婷久久综合| 白白色 亚洲乱淫| 欧美一区二区视频在线观看2020| 日韩欧美一区二区免费| 久久久精品免费免费| 亚洲成人av资源| 久久99久久99| 波多野结衣的一区二区三区| 91麻豆精品91久久久久久清纯 | 欧美主播一区二区三区| 欧美日本国产一区| 亚洲国产高清在线| 国产精品色哟哟| 激情综合亚洲精品|