【问题标题】:Shortest Path between two points on a 'Tube Map' along with MySQL“管图”上两点之间的最短路径以及 MySQL
【发布时间】:2011-07-24 21:31:19
【问题描述】:

任何人都知道在图像上选择一个点然后保存它的代码是什么。我正在使用 Dreamweaver CS5 在伦敦地下 [Tube Map] 的图像上创建热点。但是选择这两个点的方法是什么。

由于我正在开发一个可点击界面的旅程规划器,因此我需要选择“管道地图”上的任意两个点,然后获取任意两个选定点之间的最短路径。类似这样的http://www.mtr.com.hk/jplanner/flash_chi/index.php

我有 Tube Map 的信息,并在 MySQL 或 PhpMyAdmin 中创建,我从 Wikipedia http://commons.wikimedia.org/wiki/London_Underground_geographic_maps/SQL 获得的 有人请帮助我从哪里开始,这很令人困惑。我正在使用 Wampserver2

【问题讨论】:

  • 你听说过Traveling Salesman问题吗?
  • 是的,我找到了各种最短路径算法,但我想一步一步地在图像上创建热点后,我希望选择这些点。 HTML(ImageMap 技术)或 Javascript 的源代码是什么。
  • 实际上它是一个可点击的伦敦“Tube Map”地图旅程规划器,因为它是一个复杂的网络,因此任何 PHP 或 .NET 中的 C# 解决方案都适用。
  • 我的意思是,这不是微不足道的。取决于您希望您的建议有多“准确”。
  • 类似于这个应用程序,mtr.com.hk/jplanner/flash_chi/index.php

标签: c# php distance graph-algorithm


【解决方案1】:

作为我论文的一部分,我已经在 SQL 中实现了这一点。 见这里:http://ondra.zizka.cz/projekty/diplomka/DiplomovaPrace-OndrejZizka.pdf

它是捷克语,但算法是 SQL。

但是,我的算法会根据时间表计算当前时刻的最短连接。我没有在您的数据中看到时间表数据,因此应该更容易 - 请参阅 Dijkstra 算法或 A* 等。

根据您对另一个答案的评论 - 我正在为您添加一个链接:

【讨论】:

  • 这些是我的 MySQL 和 PhpMyAdmin 数据库中已经创建的结构,我在哪里可以将其与前端的图像链接,即“管图”--表链接的表结构-- CREATE TABLE 链接(station1 smallint NOT NULL default '0', station2 smallint NOT NULL default '0', line smallint NOT NULL default '0', UNIQUE (line,station1,station2));
  • 嗯,好的。 1) PhpMyAdmin 是一个前端,它是无关紧要的。 2)在您的情况下,将前端中的图像与 DB 中的结构链接是 PHP 的任务。我建议你用 SVG 图形覆盖图像,或者在 PHP 中创建一个透明图像,在其中绘制图形,然后用它覆盖地图。
  • @Ondra:我想知道如何解决多列火车之间的连接问题,即如果您需要换乘火车。这些信息在某种程度上与图表相关吗?你是如何使用时刻表的?你使用装箱算法吗?
【解决方案2】:

您想为每个可能的连接建立距离或时间消耗表,然后您可以使用 dijkstra 计算最短路径。这不是旅行推销员的问题,而是与 cs 中的图算法有关。这是我的 tsp-solver 和交付服务和价格表排序的解决方案:bit.ly/rdZxRo。这一切都与 php、mysql、ajax、typo3 有关。

【讨论】:

  • 是的,我在 codeproject codeproject.com/KB/WPF/TubePlanner.aspx 中看到了几个关于 A* 和 Dijkstra 算法的内容,但它是一个 Windows 应用程序,我正在寻找具有客户端服务器场景的 Web 应用程序。
  • 没关系 - 算法是抽象的。
  • @Yes:这是我的 tsp 解决方案并提供服务:bit.ly/rdZxRo。都是用php、mysql、ajax、typo3。
猜你喜欢
  • 2016-03-04
  • 2018-09-18
  • 2015-06-12
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-02-06
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多