TC官方合作论坛

 找回密码
 立即注册
查看: 250|回复: 14

[其他] [7.0|8.0]一個很普通的A星插件

  [复制链接]
发表于 2022-5-14 03:37:49 | 显示全部楼层 |阅读模式
本帖最后由 bestkakkoii 于 2022-5-15 00:05 编辑

最近刚好在整理之前写的东西,想说消失颇久的,心血来潮改写成TC专用A星

范例裡面很详细了,底下就大概贴调用方法

最多可以有65536组(0-65535)A星对象(C++实例化对象,不是TC的com对象)

不限制每个对象的地图数量(以ID区分对象[只能是0-65535的无符号短整数],以地图编号区分地图[任意字符串])


且每个对象的地图都是独立开的,读过一次之后会一直存在直到主动清除/进程结束/插件卸载

使用范例:
游客,如果您要查看本帖隐藏内容请回复




函数列表:

[地图类]
createNewMap --新建地图
addCollision --添加障碍物
removeCollision--移除障碍物
freeMap--释放指定地图
printMap--输出指定地图可视图档(BMP)
setRoadColor --设置输入/输出路面颜色
setWallColor--设置输入/输出牆体颜色
setPathColor--设置输出路径颜色

mapSaveAs--保存二进制地图
mapLoadFrom--载入二进制地图


readBitmap --载入BMP地图//根据设置的牆体颜色和路面颜色判断
enableAutoPrint--
是否允许寻路自动输出路线图(BMP) 默认地图名称: id_mapid.bmp
setOutputDirectory--设置寻路路径图输出目录[不同ID分别输出默认进程路径]

isRoad--检查指定坐标是否为路
isCollision--检查指定坐标是否为障碍




[寻路类]
initialize--寻路初始化(每次用完寻路最好都调用一次,清理缓存+重新实例化)
setHeuristic--设置寻路启发式
setObliqueValue--设置斜角花费值
setStepValue--设置直角花费值
enableCorner--寻ˊ路是否允许拐角
start--开始寻路(返回TC数组字符串或一般的字符串路径座标)

//返回TC数组的格式如: array("1" = array("x" = 15, "y" = 20), "2" = array("x" = 16, "y" = 21),..................)
//一般格式如: 15,16|16,21|........

详细调用方法

游客,如果您要查看本帖隐藏内容请回复




























本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复

使用道具 举报

发表于 2022-5-14 06:30:07 | 显示全部楼层
回复

使用道具 举报

发表于 2022-5-14 11:05:50 | 显示全部楼层
感谢,学习了
回复 支持 反对

使用道具 举报

发表于 2022-5-17 03:27:40 来自手机 | 显示全部楼层
1111111
回复

使用道具 举报

发表于 2022-5-17 23:24:23 | 显示全部楼层
学习
回复

使用道具 举报

发表于 2022-5-18 04:08:51 | 显示全部楼层
好像实用
回复

使用道具 举报

发表于 7 天前 来自手机 | 显示全部楼层
学习学习
回复

使用道具 举报

发表于 7 天前 | 显示全部楼层
一個很普通的A星插件
回复 支持 反对

使用道具 举报

发表于 6 天前 | 显示全部楼层
感谢分享,楼主好人~!!!!!!
回复 支持 反对

使用道具 举报

发表于 5 天前 | 显示全部楼层
谢谢分享
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

推荐上一条 /2 下一条

关闭

小黑屋|TC官方合作论坛 (苏ICP备18045623号)

GMT+8, 2022-5-26 02:38 , Processed in 0.069001 second(s), 23 queries .

Powered by 海安简单软件服务部

© 2008-2019 版权所有 保留所有权利

快速回复 返回顶部 返回列表