打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
OSM地图的思想是什么? 让cityengine和placemaker...

作者 | dreamsong

编辑 | GeoTalks


去年到现在,很多软件在更新,也涌现出了很多新软件。


其中部分更新的软件跟两个趋势结合得很紧密:一个是数据;一个是规则


我先把要描述的两个软件主角抛出来:一个是cityengine,还有一个是placemaker。


对于cityengine知道的人会一直关注,尽管这个软件目前国内应用不多,知道的人也不多,一直给这个软件做了好多年广告和推广,可是真的没有收到esri半毛钱的广告费啊。


placemaker这个软件呢,知道的人不多,这里先把官网贴上,感兴趣的同学自己偷偷的去关注,http://www.suplacemaker.com/ 


这个是干嘛的呢?我用了它官方的一句话:


即时的3D城市创建。

 40小时的工作在4分钟完成!



然后看下面的图:

估计大家能明白了,她是跟城市建模有关,这个跟cityengine的强大功能一样!它厉害在哪儿?


这里有个官方视频:



看完这个视频估计你肯定能想到cityengine2016版本当中的新功能get map data 让我们再回顾一下cityengine2016新功能视频。



这两个产品有个共同特点:通过外部导入数据(其实是动态的大数据),在自己的规则下自动生成模型。


先说cityengine ,它有自己的规则文件cga,这也是它的核心,模拟现有的城市需要实际的数据,能够得到全球城市街道和建筑地块矢量数据的地图不多,开放的数据更少!


这里面openstreetmap(简称OSM)地图最为强大,也是开放的。所以cityengine会使用osm数据(因为OSM数据的增长量和可能性是其它任何公司不可比拟的,OSM全球注册用户几乎在每分每秒在更新它的数据,能做到这种的只有开源!)我也曾经因为更新过一些地块而感到自豪,后来、 后来变成伸手党  *-*,当然OSM的开放性能让全球注册用户随时调用。


我们在看placemaker,这个是sketchup上的一个插件,sketchup的优势大家都清楚,非常自由的建模,中文名称草图大师,非常适合新手和方案的前期阶段使用。


sketchup 原来属于谷歌的产品后来卖给了天宝公司,但是它的功能和迭代并没有因为易主而改变和停歇,近几年在天宝的辟护下它的生态愈加丰富,从菜单和功能上我们能看出来,它的插件包已经是一个生态商城,很多小工作室或者开发者都在这里面提供服务,今天说道的palcemaker就是其中之一(在插件库没有搜索到这个插件,也尝试过的小伙伴可以交流额)。


sketchup一直在更新,几乎从建模到后期视频方面都有涉及,于是一个涉及数据导入的插件诞生了。


spacemaker的厉害之处在于,提供了导入外部数据的新方法,并让大家知道规则的厉害之处。


尽管官方没有说这个规则,但是应该能够想到为什么这个软件能在四分钟生成一个百万城市人口的城市场景,就是因为数据在规则的驱动下形成的!只不过这个规则在splacemaker插件里面被隐藏了并没有说,这里我们回到cityengine来说明规则的强大之处,你也就明白了placemaker的规则。


cityengine诞生的时候就是一种规则建模技术,诞生于苏黎世。这种规则是用python语言写成的,觉得python是人类与机器之间最容易沟通的语言,我们通过python与电脑直接对话!cityengine的规则用一个cga规则文件存放,里面就是下面这段话:


Lot-->

    extrude(20)

    building

building-->

    color(1,0,0,0.5)

这段话的意思是把一个地块拉高20米,拉伸以后形成一个建筑(building)然后给这个20米的建筑加上半透明的红色。


color(1,0,0,0.5)中,r(红色)=1,表示红色开启 ;g(绿色)=0,表示绿色关闭; b(蓝色)=0,表示蓝色关闭;透明度=0.5,表示半透明)。


这是一个非常简单的规则文件,里面两个函数:extrude;color  。这两个单词会英语的动能懂意思,Lot 是一个约定俗成的用法表示地块的开始,当然你也可以用任何你自己规定的单词表示,比如dikuai (但是不要跟内置的函数重复,比如extrude已经是内置的函数名)。


想一下我们看到的城市模型是有一个个的建筑组成,建筑的地块样子和高度基本决定它的形体就像下面这张图,我们只要把地块拉伸一定的高度就可以形成这样的模型了。



但是这些地块数据那里来? openstreetmap可以提供 .openstreetmap是一个地图网站。如下图,他存储了建筑地块数据和街道的数据,几乎是全球的的(随时在跟新)。


下图的地址  http://www.openstreetmap.org/#map=13/39.8809/116.4561


我们获取到这样的数据,同时在这些二维数据赋予规则比如:


B(h)-->

s('1,'h,'1)

color(1,0,0)

C(h)-->

s('1,'h,'1)

color(0,1,0)

D(h)-->

s('1,'h,'1)

color(0,0,1)

Lot-->

   primitiveCube(16, 5, 24) A

 

A-->


split(x) {   5: color(1,0,0,0.5) B(2) 

       | ~0.2 : color(0,1,0,0.5) C(1) 

       |    3 : color(0,0,1,0.5) D(3)

虽然这段话不多,但是已经很强大,他几乎可以模拟一个城市的建筑组合。spacemaker插件里面就是这样一个规则文件在驱动,复杂一点就是地块的属性值比如osm数据里面获取到的建筑的高度属性值赋予到规则里面自动添加到extrude后面的参数里,这样就能模拟真的的建筑模型。


现在模型出来了,规则可以继续驱动创建生成精细的模型,比如建筑的窗口,门、屋顶、栏杆,同样可以规则驱动生成。这样一个完整的继续建筑就能生成,然后就是整个城市!



大数据的概念被传言了好久,其实它已经是老者,活了很多年,OSM就是一个活生生的强大例子,越来越多的相关领域会跟他结合、拥抱。


因为只有开放的数据、开源的程序和规则才能被长久接纳融合,数据才能叫  “大” !被流传的永远是思想!OSM地图的思想是什么?我觉得cityengine和placemaker告诉了你。


dreamsong,毕业于河北农业大学 (园林专业),mapdate公众号创始人;cityengine.cn站长;eyearth合伙人 。


源于公众号“mapdate”。本文仅代表作者个人观点。感谢作者与GeoTalks读者分享。


GeoTalks

微信号:GeoTalks

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
cityengine规则
2014Esri全球用户大会之3D
PlaceMaker 1.0 正式发布 - 全自动生成三维城市
在 ArcGIS 中使用程序化符号制作建筑
没有这套OSM全国地图数据,你的ArcGIS彻底废了!
秒出高逼格地图的技巧
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服