pgrouting进行路径规划之入门二

本文是在上一篇文章的基础上的。数据入库和字段设置请参考上篇文章。本文介绍利用pgrouting中其他方法来求取最短路径。

一、添加属性字段

为表格beijingmodified添加x1,y1,x2,y2字段

ALTER TABLE beijingmodified ADD COLUMN x1double precision;

ALTER TABLE beijingmodified ADD COLUMN y1double precision;

ALTER TABLE beijingmodified ADD COLUMN x2double precision;

ALTER TABLE beijingmodified ADD COLUMN y2double precision;

二、为新添加的属性字段赋值

UPDATE beijingmodified SET x1 =ST_x(ST_PointN(geom, 1));

UPDATE beijingmodified SET y1 =ST_y(ST_PointN(geom, 1));

UPDATE beijingmodified SET x2 =ST_x(ST_PointN(geom, ST_NumPoints(geom)));

UPDATE beijingmodified SET y2 =ST_y(ST_PointN(geom, ST_NumPoints(geom)));

三、查询

1.A*算法路径查询

SELECT seq, id1 AS node, id2 AS edge, costFROM pgr_astar(‘

SELECT gid AS id,

source::integer,

target::integer,

length::double precision AS cost,

x1, y1, x2, y2

FROM beijingmodified‘,30, 60, false,false);

2.pgr_kdijkstracost函数查询从出发点到目的地的消耗

SELECT seq, id1 AS source, id2 AS target,cost FROM pgr_kdijkstraCost(‘

SELECT gid AS id,

source::integer,

target::integer,

length::double precision AS cost

FROM beijingmodified‘,

30, array[60,70,100], false, false);

3. pgr_kdijkstraPath函数查询具体路径

SELECT seq, id1 AS path, id2 AS edge, costFROM pgr_kdijkstraPath(‘

SELECT gid AS id,

source::integer,

target::integer,

length::double precision AS cost

FROM beijingmodified‘,

30, array[60,100], false, false);

时间: 2024-11-09 16:26:44

pgrouting进行路径规划之入门二的相关文章

基于pgrouting的路径规划之一

最近接触pgrouting.把学习的结果记录下来. 利用pgrouting进行路径规划只能导入line数据,mutiline会出错.这一点在进行数据导入的时候需要注意. 一.创建数据库 有两种方法: 1.pgadmin可视化工具创建 直接把数据道路postgis模版数据库或以postgis模版数据库为模版创建数据库,这样创建的数据库直接支持空间查询和空间分析. 2.命令行创建数据库 创建数据库 createdb -U postgres routing 让数据库支持PostGIS和pgRoutin

路径规划算法综述

本文主要记录在调研移动机器的路径规划时找到的相关的算法. A*算法的详解 https://blog.csdn.net/hitwhylz/article/details/23089415 扫地机器人中用到的路径规划算法 https://www.leiphone.com/news/201606/p4rtD88yiYVQT6F9.html 导航和路径规划综述 https://blog.csdn.net/david_han008/article/details/68926189 Dijkstra算法与A

百度地图api的简单应用(二):轻量级路径规划

同上篇的原理,我们还是输入url,返回json文件. 而由图可见,路径规划返回的json文件内容可能会很多.杂: 因此后续的处理与上篇略有不同. import json import requests feature_data = [] url_0='http://api.map.baidu.com/directionlite/v1/driving?output=json&' ak='你的密钥' origin='31.4,121.4' destination='31.5,121.5' url=u

Unity路径规划

Unity路径规划 背景 酷跑游戏中涉及到弯道.不规则道路. 找来一些酷跑游戏的案例来看,很多都是只有直线道路,也就不存在所谓的路径问题,设置一个方向即可,本文主要给出几种我自己用过.看过的Unity中可以用做路径规划的一些资料. 方案一 Unity自带解决方案Navigation,可以参考小赵的文章: unity自带寻路Navmesh入门教程(一) unity自带寻路Navmesh入门教程(二) unity自带寻路Navmesh入门教程(三) 这几篇文章还是不错的,配合官方文档,对其功能就能就

零基础自学人工智能路径规划,附资源,亲身经验

下面的每个资源都是我亲身学过的,且是网上公开公认最优质的资源.下面的每个学习步骤也是我一步步走过来的.希望大家以我为参考,少走弯路.请大家不要浪费时间找非常多的资料,只看最精华的! 综述,机器学习的自学简单来说分为三个步骤前期:知识储备包括数学知识,机器学习经典算法知识,编程技术(python)的掌握中期:算法的代码实现后期:实战水平提升机器学习路径规划图 一.数学基础很多人看到数学知识的时候就望而却步,数学是需要的,但是作为入门水平,对数学的要求没有那么的高.假设你上过大学的数学课(忘了也没事

iOS百度地图路径规划和POI检索详细总结-b

路径规划.png 百度地图的使用 百度地图API的导入网上说了许多坑,不过我遇到的比较少,这里就放两个比较常见的吧.坑一: 奥联WIFI_xcodeproj.png 如上图所示,在infoplist里加入这个字段,而且这里还可以设置提示的内容.不加的话,嘿嘿嘿,期待你的尝试.坑二:如下图 Pasted_Graphic_jpg.png 导入百度地图API运行之后报上图错误大约18到20个左右,解决方法添加libstdc++.6.0.9 的库.填完坑之后看一下我们今天要演示的效果吧. 路线规划图.g

DevExpress XtraReports 入门二 创建 data-aware(数据感知) 报表

原文:DevExpress XtraReports 入门二 创建 data-aware(数据感知) 报表 本文只是为了帮助初次接触或是需要DevExpress XtraReports报表的人群使用的,为了帮助更多的人不会像我这样浪费时间才写的这篇文章,高手不想的看请路过 本文内容来DevExpress XtraReports帮助文档,如看过类似的请略过. 废话少说 开始正事 一.创建应用程序并添加报表 启动 MS Visual Studio (2005.2008.或 2010). 在 Visua

Flex入门(二)——Flex+BlazeDs+J2ee小实例

首先来简单介绍一下BlazeDS. BlaseDS的核心功能包括RPC Services(远程过程调用服务) 和Messaging Service(消息服务).BlazeDS是一个基于服务器的Java远程调用(remoting)和web消息传递(messaging)技术,使得后台的Java应用程序可以和运行在浏览器上的Flex应用程序能够互相通信.简单来说一个BlazeDS应用包括客户端(Flex或AIR应用程序)和一个服务端(J2EE程序).BlazeDS在期间起着承上启下的作用,Flex和B

iOS高德地图使用-搜索,路径规划

项目中想加入地图功能,使用高德地图第三方,想要实现确定一个位置,搜索路线并且显示的方法.耗了一番功夫,总算实现了. 效果 WeChat_1462507820.jpeg 一.配置工作 1.申请key 访问 http://lbs.amap.com/dev/key/ 在高度地图第三方开发平台申请一个key,注册账户,新建应用,这个没什么门槛.得到这个key 屏幕快照 2016-05-06 上午10.34.15.png 提示一下,这个key对应的bundle ID 要和工程里面的bundle ID 相同