VB+MapX最短路径分析
VB 写的 MapX 路径工具还挺实用的,适合做 GIS 项目的朋友参考。用的是老牌控件 MapX,搭配 VB 来搞最短路径计算,核心逻辑其实不复杂:先把路网数据读进数组,再触发按钮事件去路径,估计背后跑的是 Dijkstra 那套。
代码里变量命名还挺直观,像fnode1
、tnode1
、lgth1
这些,直接反映每条边的起点、终点和长度。还有path()
数组,就是靠它把最短路径在地图上画出来,用 MapX 的图层操作把选中的路段高亮显示出来。
cmdShrstPath_Click
这个函数是关键逻辑,路径开关、路径长度输出,还有图层的都在这块。虽然没完整贴出路径计算的算法实现,但如果你熟 A*或者 Dijkstra,逻辑容易对上。
注意一点哦,运行这段代码得连上 Oracle 数据库,路网数据也得准备好。不然你点按钮是跑不起来的。如果你刚好在用 VB 做 GIS 系统,或者在维护老项目,这段代码还是蛮有参考价值的。
另外你要是对其他平台的实现也感兴趣,像用 Flex 搞的、C++、C#的,下面这些链接可以一起看:
如果你想在现有 VB 项目里加地图路径功能,可以试试把这套逻辑整合进去。对 MapX 熟一点,开发效率也会高多。
44KB
文件大小:
评论区