|
本帖最后由 bestkakkoii 于 2023-3-4 00:08 编辑
其他文章:
http://52tc.info/home.php?mod=space&uid=231477&do=thread&view=me&from=space&type=thread
20230217
- 修正多线程堆分配可能冲突的问题
- 移除掉一些用处不太大的设置函数
- 移除 所有函数的数字id参数
- 降板为C++17更具兼容性体积更小 200kb->70kb
- 增加x64的版本
20220728
20220706
- 新增 startEx 与start作用相同区别是 返回值为坐标数量,引用返回一个std::vector<POINT>结构体指针 可以省去分割字符串 或 解决坐标数量过多,导致字符串太長而缓存溢出的问题
最近刚好在整理之前写的东西,想说消失颇久的,心血来潮改写成TC专用A星
范例裡面很详细了,底下就大概贴调用方法
不限制每个对象的地图数量[任意字符串]
且每个对象的地图都是独立开的,读过一次之后会一直存在直到主动清除/进程结束/插件卸载
支持多线程安全使用,内部使用读写锁保护
注意事项
示例内调试插件路径要自己改一下
使用C++17 __stdcall调用约定 ,TC或所有能调用dll的语言都能使用
使用范例
函数列表:
[地图类]
createNewMap --新建地图
addCollision --添加障碍物
removeCollision--移除障碍物
freeMap--释放指定地图
printMap--输出指定地图可视图档(BMP)
setRoadColor --设置输入/输出路面颜色
setWallColor--设置输入/输出牆体颜色
setPathColor--设置输出路径颜色
mapSaveAs--保存二进制地图
mapLoadFrom--载入二进制地图
readBitmap --载入BMP地图//根据设置的牆体颜色和路面颜色判断
enableAutoPrint--是否允许寻路自动输出路线图(BMP) 默认地图名称: id_mapid.bmp
setOutputDirectory--设置寻路路径图输出目录[不同ID分别输出默认进程路径]
isRoad--检查指定坐标是否为路
isCollision--检查指定坐标是否为障碍
[寻路类]
enableCorner--寻ˊ路是否允许拐角(8方位|4方位)
start--开始寻路(返回TC数组字符串或一般的字符串路径座标)
startEx--开始寻路Ex(返回std::vector<POINT>结构体指针和vector元素数量)
//返回TC数组的格式如: array("1" = array("x" = 15, "y" = 20), "2" = array("x" = 16, "y" = 21),..................)
//一般格式如: 15,16|16,21|........
详细调用方法
|
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
|