当前位置: 首页 > news >正文

C++自动寻径算法

测试
#include <iostream>
#include "source/AStar.hpp"int main()
{AStar::Generator generator;generator.setWorldSize({25, 25});generator.setHeuristic(AStar::Heuristic::euclidean);generator.setDiagonalMovement(true);generator.addCollision({1, 1}); // 添加障碍物generator.addCollision({1, 2}); // 添加障碍物generator.addCollision({2, 1}); // 添加障碍物generator.addCollision({2, 0}); // 添加障碍物generator.addCollision({0, 2}); // 添加障碍物std::cout << "Generate path ... \n";auto path = generator.findPath({0, 0}, {3, 3});for(auto& coordinate : path) {std::cout << coordinate.x << " " << coordinate.y << "\n";}
}
 效果

正常

25 x 25 map, Generate path ...
3 3
2 2
1 1
0 0

 {1,1}{1,2}障碍 

25 x 25 map, Generate path ...
3 3
2 3
1 2
0 1
0 0

 全障碍 

25 x 25 map, Generate path ...
0 1
0 0

参考

GitHub - daancode/a-star: A* algorithm C++ implementation.


创作不易,小小的支持一下吧!


http://www.mrgr.cn/news/31336.html

相关文章:

  • 网关登录校验(2)----网关如何将用户信息传递给微服务
  • Django+React+Neo4j实现的地质领域知识图谱系统
  • DNS解析流程
  • pandas入门
  • day51
  • df将字典转换为df,如何以key为行而不是列
  • 【刷题日记】15. 三数之和
  • 有关JS下隐藏的敏感信息
  • 算法【Dijkstra算法及分层图最短路】
  • C++——用选择法对10个数值进行排序。
  • [嵌入式] 3588相关
  • 码头童话,“丈量”行业数智化转型
  • .config、Kconfig、***_defconfig之间的关系和工作原理
  • 对于C++继承中子类与父类对象同时定义其析构顺序的探究
  • 容器化安装Jenkins部署devops
  • Go Testify学习与使用
  • 预测合理交易目标:中断形态趋势分析
  • 微服务架构陷阱与挑战
  • 4. 密码协议
  • 【C++篇】C++类与对象深度解析(六):全面剖析拷贝省略、RVO、NRVO优化策略