📄 astar.h
字号:
// Astar.h: interface for the CAstar class.
//A*寻路算法
//////////////////////////////////////////////////////////////////////
#if !defined(AFX_ASTAR_H__49990BB3_403E_478D_AF48_1EE3AC614BD9__INCLUDED_)
#define AFX_ASTAR_H__49990BB3_403E_478D_AF48_1EE3AC614BD9__INCLUDED_
#include "AstarBaseDate.h" // Added by ClassView
#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000
struct ClickPt //已检索过的点
{
POINT point; //点本身
int fp; //父节点在本结构中的位置
BOOL ckclient; //TRUE为待查点,FALSE为已查点
int pv; //本点与终点的步长
};
class CAstar
{
public:
int GetWay(int astarmap[9][8],POINT backpoint[56]); //收索路径,函数返回步数
CAstar(POINT starpoint,POINT endpoint);
virtual ~CAstar();
private:
BOOL SAPoint(POINT point);
POINT DPoint(POINT point);
POINT UPoint(POINT point);
POINT RPoint(POINT point);
POINT LPoint(POINT point);
BOOL CTwoPt(POINT point1,POINT point2);
private:
BOOL OWolk(int astarmap[9][8],POINT cpoint);
//获取返回路径,函数返回步数
int BackPath(POINT backpoint[56],int lastn);
int SFMinPv();
int bn; //基点记录
void FSPoint(POINT point);
ClickPt cpt[56];
BOOL SSPoint(POINT point);
POINT bspt; //基点
int n; //结构体索引
int KclaterPv(POINT point);
POINT aendpoint; //起点
POINT astarpoint; //终点
};
#endif // !defined(AFX_ASTAR_H__49990BB3_403E_478D_AF48_1EE3AC614BD9__INCLUDED_)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -