astar.h
来自「一个非常有用的客户端开发程序」· C头文件 代码 · 共 52 行
H
52 行
#ifndef ASTAR#define ASTAR#include "pp_point.h"#include "logger/src/logger.h"#include "priorityqueue.h"#include <list>#include <map>#include <vector>#define ENABLE_WAYPOINT_SMOOTHING 1const double _threshold=0.3;using namespace std;enum direction {n,e,w,s,nw,ne,se,sw,err};class AStar{ public: AStar(int gridSize,double resolution); ~AStar(); void setOccupancy(double** occ) {_occupancy=occ;} list<PP_Point> findPlan(PP_Point start, PP_Point goal); double heuristic(PP_Point node); PP_Point** getClosedList(); list<PP_Point> getWayPoints(list<PP_Point> &path); void setBumpList(list<PP_Point> bl){_bumpList=bl;} private: static direction getDirection(PP_Point curr, PP_Point next); private: PP_Point** _closedList; PriorityQueue _priorityQueue; double** _occupancy; int _gridSize; double _resolution; PP_Point _start, _goal; list<PP_Point> _bumpList;};#endif // ASTAR/********************************************************************* * (C) Copyright 2006 Albert Ludwigs University Freiburg * Institute of Computer Science * * All rights reserved. Use of this software is permitted for * non-commercial research purposes, and it may be copied only * for that use. All copies must include this copyright message. * This software is made available AS IS, and neither the authors * nor the Albert Ludwigs University Freiburg make any warranty * about the software or its performance. *********************************************************************/
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?