使用FME提取最短路径

作者: 进击的码农设计师 | 来源:发表于2019-10-11 13:11 被阅读0次

本次依旧使用百度地图开放平台中的路径规划API,本次使用的是轻量级路线规划中的步行路线规划

总体思路如下:

  • 使用生成的起点、终点坐标值构建请求url;
  • 将路径上的所有点提取出来;
  • 将点连接成线。

1.创建起点、终点:

  • 添加Creator转换器、AttributeManagerr转换器、VertexCreator转换器、FeatureMerger转换器

使用Creator转换器、AttributeManagerr转换器、VertexCreator转换器这三个转换器生成起点(本文以上海城隍庙附近为起点)、终点(本文以上海和平饭店为终点),并将其转成点要素,然后使用FeatureMerger转换器将起点、终点合并成一个要素。
具体步骤可以参看基于路径规划API使用FME计算等时圈这篇文章。

2.构建访问url,解析结果:

  • 添加HTTPCaller转换器

根据文档填写相关参数。

  • 添加JSONFragmenter转换器

填写解析表达式并记得暴露所需属性。

  • 添加AttributeManager转换器

进行属性整理。

此时通过添加Inspector查看结果,发现已得到所需属性path,不过path中是由若干个坐标值连接而成(其中,每个坐标对之间使用;分隔,每个坐标对的经纬度使用分隔),因此后续需要将其中的每个坐标值提取出来。

3.将path中的点提取出来:

  • 添加AttributeSplitter转换器

首先使用;将坐标对分割开。

添加Inspector查看结果,发现分割开的坐标对生成了一个list,但是没有添加到要素属性中。

  • 添加ListExploder转换器

使用ListExploder转换器将上述生成的list炸开。

添加Inspector查看结果,发现分割开的坐标对已经添加到要素属性中。

  • 添加ListExploder转换器

首先使用,将坐标对的经纬度分割开。

需注意的是,此时需要手动暴露元素,因为一个list中只有经度、纬度两个元素,所以填写0,1即可。

添加Inspector查看结果,发现每个坐标值都提取出来了。

  • 添加VertexCreator转换器

使用VertexCreator转换器按照经纬度坐标生成点。

3.将点连成线:

  • 添加LineBuilder转换器
  • 添加AttributeManager转换器

进行属性整理以便输出。

4.添加写模块:

添加shapefile写模块,将要素输出为shapefile文件。

添加Inspector查看结果,看到路径已经提取出来了。

相关文章

  • 使用FME提取最短路径

    本次依旧使用百度地图开放平台中的路径规划API,本次使用的是轻量级路线规划中的步行路线规划。 总体思路如下: 使用...

  • 20-Dijkstra算法

    Dijkstra Dijkstra属于单源最短路径算法,用于计算一个顶点到其他所有顶点的最短路径。 使用前提:不能...

  • Maven依赖原则

    1. 依赖路径最短优先原则 由于 X(2.0) 路径最短,所以使用 X(2.0)。 2. 声明顺序优先原则 在 P...

  • 狄克斯特拉算法

    要计算非加权图中的最短路径, 可使用广度优先搜索。 要计算加权图中的最短路径,可使用狄克斯特拉算法。 在无向图中,...

  • 图的应用-最短路径求解

    图的最短路径   图的最短路径是一个起点到一个终点之间最短的路径。  用于解决最短路径问题的算法被称做“最短路径算...

  • 广度优先搜索

    广度优先搜索指出是否有A到B的路径 如果有,广度优先搜索将找出最短的路径面临类似于找最短路径的问题时,可以尝试使用...

  • MongoDB视频教程

    链接:https://pan.baidu.com/s/1bZz87JG1tD5h5FME8tsVAw 提取码:yxop

  • Hanlp中使用纯JAVA实现CRF分词

    Hanlp中使用纯JAVA实现CRF分词 与基于隐马尔可夫模型的最短路径分词、N-最短路径分词相比,基于条件随机场...

  • Yen的K条最短路径算法(KSP)

    一、问题介绍 1.求K条最短路径的必要性 最短路径问题分为: 单源最短路径 所有顶点对间的最短路径 共同的缺陷:这...

  • 最短路径(Floyd算法)

    最短路径:两顶点之间经过的边上权值之和最小的路径。 Floyd算法:使用两个数组,数组P记录起点v到其他顶点的最短...

网友评论

    本文标题:使用FME提取最短路径

    本文链接:https://www.haomeiwen.com/subject/pkxtmctx.html