首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

ELK插件创建城市地图

OpenStreetMap是一个开放的地图数据网站,用户可将选定区域以XML格式导出地图数据。ELK插件可依据XML格式的数据创建矢量地图,生成建筑、道路、水域、铁路、便利设施等图示。

ELK插件的下载地址为:http://www.food4rhino.com/,插件下载完毕后,可将其复制到该文件目录下:C:\Users\Administrator\AppData\Roaming\Grasshopper\Libraries,重启Rhino和GH后即可看到ELK插件出现在标签栏中。

ELK插件可替代手工描绘地形图的过程,在很大程度上提高了工作效率。不过由于OpenStreetMap网站对于国内较大城市才有较为完整的矢量数据,对于数据较少的区域,ELK插件只能起到辅助的作用。如图所示,该案例是以ELK插件创建城市地图的方法。

(2)在GH中调入File Path运算器,并通过右键单击该运算器,选择Set One File Path,调入后缀名为.osm格式的矢量数据。

(3)将File Path读取的数据赋予Location运算器的File输入端。

(4)用两个Data运算器,分别拾取Location运算器的OSM、File两个输出端数据,并将其分别命名为“OSM”、“File”。

(5)将OSM、File两个输出端数据分别赋予OSM Data运算器的O、F两个输入端。由于OSM Data运算器可产生26种不同类型的图示,可通过右键单击该运算器,将Feature Type类型改为building。其输出结果即为矢量数据中对应建筑轮廓的顶点,将该运算器通过Group进行群组并命名为“building”。(如果读者想对输出建筑类型进行细分管理,可通过右键单击OSM Data运算器,选择Select Feature Sub-types,将对应的子类建筑增加到右侧选择集中,并勾选Show Individual Outputs,即可将不同子类别建筑添加到运算器输出端)

(6)用PolyLine运算器将building的顶点连成多段线,并通过Custom Preview运算器将建筑轮廓线赋予黑色。

(7)将名称为“OSM”、“File”两个Data数据赋予OSM Data运算器的O、F两个输入端,通过右键单击该运算器,将Feature Type类型改为waterway。其输出结果即为矢量数据中对应水系的节点,将该运算器通过Group进行群组并命名为“waterway”。

(8)用PolyLine运算器将waterway的节点连成多段线,并通过Custom Preview运算器将建筑轮廓线赋予蓝色。

(9)为了简化程序的连线,可将名称为“OSM”、“File”两个Data运算器各复制四组,同时分别右键单击输入端,将Wire Display的连线方式改为Hidden,即可隐藏运算器之间的连线。

(10)将复制后的第一组“OSM”、“File”两个Data数据赋予OSM Data运算器的O、F两个输入端,将Feature Type类型改为route。其输出结果即为矢量数据中对应道路的节点,将该运算器通过Group进行群组并命名为“route”。

(11)将复制后的第二组“OSM”、“File”两个Data数据赋予OSM Data运算器的O、F两个输入端,将Feature Type类型改为leisire。其输出结果即为矢量数据中对应休闲边界的节点,将该运算器通过Group进行群组并命名为“leisire”。

(12)将复制后的第三组“OSM”、“File”两个Data数据赋予OSM Data运算器的O、F两个输入端,将Feature Type类型改为amenity。其输出结果即为矢量数据中对应便利设施边界的节点,将该运算器通过Group进行群组并命名为“amenity”。

(13)将复制后的第四组“OSM”、“File”两个Data数据赋予OSM Data运算器的O、F两个输入端,将Feature Type类型改为landuse。其输出结果即为矢量数据中对应土地利用边界的节点,将该运算器通过Group进行群组并命名为“landuse”。

(14)用四个PolyLine运算器将四组节点分别连成多段线,并通过四个Custom Preview运算器将四组多段线赋予不同颜色。

(15)由于OSM Data运算器可生成26种不同类型的图示节点,本案例只提取其中六种作为演示,读者可根据需求自行增加图示种类。

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20200517A08AGS00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券