我有一个用 Illustrator 设计的自定义 map 。 我需要找到 map 中两个地点之间的最短路径,并且我应该突出显示该路径。 map 的设计方式是:道路用黄线表示,房屋用红色表示,草用绿色表示,水用蓝色表示。 map 尺寸为 2000 X 3000 像素分辨率。
为了找到最短路径,我计划实现 A* 算法。
问题是我如何在代码中访问我的图形 map ?我是否需要采用大小为 2000x3000 的数组来说明哪些像素有道路、水、建筑物。为了表示它们,我认为将道路赋值为 1,水赋值为 2,房屋赋值为 3。但我认为这是一个复杂而漫长的过程。
还有其他解决办法吗?
请您参考如下方法:
更好的方法是将 map 保存为 vector 格式,您的编程语言中有一个解析器(SVG 可能是一个不错的选择)。
这使得创建可以使用 A* 求解的图表变得更加容易。