Map 带方向的自定义地图

Map 带方向的自定义地图,map,mapping,spatial,dijkstra,Map,Mapping,Spatial,Dijkstra,我想制作一个地图程序,提供校园周围(宿舍、足球场等)和建筑物内(办公室、自助餐厅等)的方向。是否存在任何有助于实现这一目标的措施 另一种选择似乎是,我必须创建自己的校园点和路径地图,并进行路径查找以确定方向 编辑:为了澄清,我想知道如何将空间感知添加到寻路程序中,以便为路径生成行走方向。示例:对于一个有两个节点的办公室的走廊,允许路径进入走廊,您如何知道某个办公室位于一个节点的左侧,而位于另一个节点的右侧?如果不知道您想要什么样的界面,这很难回答。它应该是谷歌地图类型的应用程序吗?还是更简单的?

我想制作一个地图程序,提供校园周围(宿舍、足球场等)和建筑物内(办公室、自助餐厅等)的方向。是否存在任何有助于实现这一目标的措施

另一种选择似乎是,我必须创建自己的校园点和路径地图,并进行路径查找以确定方向


编辑:为了澄清,我想知道如何将空间感知添加到寻路程序中,以便为路径生成行走方向。示例:对于一个有两个节点的办公室的走廊,允许路径进入走廊,您如何知道某个办公室位于一个节点的左侧,而位于另一个节点的右侧?

如果不知道您想要什么样的界面,这很难回答。它应该是谷歌地图类型的应用程序吗?还是更简单的?无论你可能要定义什么样的路径——什么样的事情是无法通过的

你可以做很多工作,定义什么是不可通行的,然后使用路径查找算法穿过草坪;但这比简单的方法需要更多的工作:

  • 把所有的路线都涂成灰色,绘制一张校园地图
  • 在PHP/Perl/Ruby/Python/Coldfusion/ASP.Net/where中定义点和路径
  • 从用户处获取起始和目标
  • 运行Dijkstra算法
  • 显示校园地图,并用覆盖物突出显示路段,以照亮其路径

  • 如果不知道你想要什么样的界面,这是很难回答的。它应该是谷歌地图类型的应用程序吗?还是更简单的?无论你可能要定义什么样的路径——什么样的事情是无法通过的

    你可以做很多工作,定义什么是不可通行的,然后使用路径查找算法穿过草坪;但这比简单的方法需要更多的工作:

  • 把所有的路线都涂成灰色,绘制一张校园地图
  • 在PHP/Perl/Ruby/Python/Coldfusion/ASP.Net/where中定义点和路径
  • 从用户处获取起始和目标
  • 运行Dijkstra算法
  • 显示校园地图,并用覆盖物突出显示路段,以照亮其路径

  • 如果我使用多边形作为节点而不是航路点,我可以创建一个导航网格,用于寻路和方向。对于方向和使用一个矩形节点,如果我给它的边从1到4的矩形编号,从顶部顺时针方向,我知道如果我进入第2侧,离开第1侧,这是一个右转。或者,如果我进入第3侧(比如底部),离开第4侧,它是一个左侧。

    如果我使用多边形作为节点而不是航路点,我可以创建一个导航网格,用于寻路和方向。对于方向和使用一个矩形节点,如果我给它的边从1到4的矩形编号,从顶部顺时针方向,我知道如果我进入第2侧,离开第1侧,这是一个右转。或者,如果我进入第三面(比如底部),离开第四面,它就是左边。

    它的功能应该类似于谷歌地图,但在谷歌地图目前没有覆盖的区域内(办公室、教室等)。从一栋楼到另一栋楼在校园里走动看起来并不难(使用*);即使找到教室也不算太糟糕。对我来说,复杂的部分是为路线生成方向。我不知道如何给程序空间感知(“走100英尺,2467B房间在左边。”如果走廊有两个节点,一条路径可以从中进入,你如何确定左侧和右侧?它的功能应该类似于谷歌地图,但在谷歌地图目前没有覆盖的区域内(办公室、教室等).从一栋楼到另一栋楼在校园里走动看起来并不难(使用A*);即使找到教室也不难。对我来说,复杂的部分是为路线生成方向。我不确定如何给程序空间感知(“走100英尺,2467B房间在左边。”如果走廊有两个节点,路径可以从中进入,如何确定左侧和右侧?