• about SIMILE at MIT

    作者:  • 2007 年 12 月 12 日 • 技术主义 • 5 条评论

    presidents20071212.jpg最近有很多事务性的东西要烦,所以没有把所学的东西记录下来。可能发现自己越来越远离自己的专业,而是去关心一些使用我们的专业技能所能解决的实际问题。做GIS,更多的是关心对象的地理属性,而对于时间属性,一直没有很好的解决方案。最近一直想着如何对地理对象进行时间和空间化的表达。所以又重拾了前一段时间研究的MIT的SIMILE 项目。该项目团队是由一些计算机专业出身,关心OpenSource,Client-side GUI,Ajax, Firefox Plugins的人组成。其中的Timeline对于我们搞对象的时间可视化表达很有帮助。而后,我又用SVN看到了该项目组也在关心如何通过脚本编程来实现和google map的交互。其中一个例子是调用json数据来显示美国历来各位总统的信息,同时通过timeline和map来实现对象的空间与时间可视化。我觉得非常值得我们搞GIS的同行们一看。

    PS:SIMILE的功能的优势也是其劣势就在于数据都是用Json在客户端处理和操作,这样需要编写大量的脚本出来。而我现在要做的和历史有关的矢量数据是存储PostgreSQL中的,这样才能支持SQL语句的查询、filter的操作。我现在的想法是,Base Layer用栅格数据,而Editable Layer用Openlayers的Vector来表示,而其他的Common Layer也是用PostgreSQL来存储。这样的化,如果需要,也可以将数据转变为Editable,让前台调用使用。

    还有一个问题,就是给前台的数据量不能太多,如果太多,客户端是无法承受的,我在想,如何才能让客户端的数据两不是很大呢?因为要做到很好的交互,就必然要求把数据传输给前台,这样必然占用了大量客户端的内存,有点不太现实,但是,如果不这样去做,那又能如何呢?所以我在想,是用什么数据源,用CHGIS的时间序列,还是那个佛教寺庙的数据?我一会实验一下,才能有最终的结果。

    关于

    生于古城長安,求學金陵,輾轉赴美深造,現漂泊於長安與北京。

    http://www.yenching.org

    1. 很不错。
      不过我也觉得前台数据量是一个很头痛的问题,Openlayers的Vector也肯定是有瓶颈的。
      除了分页显示,好像还真没有什么好的方法。
      难道,后台生产栅格再叠加到BaseLayer?有点复杂了,并且,同样需要处理热点HotPoint。
      有好的思路告诉我下。呵呵。向你学习。

    2. Vector还是要用的,最好是仅仅现实你需要的vectors。前几天我编了个小例子,就是仅仅显示你所选择的vectors.毕竟如果全部现实而且数据量比较大的话,是个问题。当然了,你还可以再给几个限定条件来减少数据量:显示在浏览屏幕里面的;如果结果太近,就给显示的地物一个容差;分页显示; 等等。

      多交流。呵呵

    3. http://maps.google.com/?ie=UTF8&hl=en&q=jfk+to+350+5th+ave,+new+york&f=q&sampleq=1
      不知道google的效率为什么这么高。这是google得航线计算,你点击航线中的一个点来拖动以添加中途点,你拖动的时候就给你计算,速度非常的快。
      这里,线的点数之多,画线速度之快,并且不怎么占用CPU,实在让人佩服。
      我用mapbar的框架做了几十个HotPoint,拖动地图速度明显很慢,如果用VML画线,在FF中基本上要死掉状态。疯了。
      最近不知道有没有看google的春运地图,非常的漂亮。如果google把它们的搜索技术和地图引擎结合,那么是强大而可怕的事情。比如google生活搜索中的搜索租房,能够搜索出页面中的地址并正确的给你标识到地图中,非常神奇的事情,越来越智能化了。叹服啊。
      所以最后,我在想,都让google做了,我们还做什么。迷茫了。呵呵