开源网格GIS实验田

OpenSource Grid GIS Space

  • 内容导航

    Creative Commons
    本站文章全部原创
    转载请遵循创作共用协议
  • 文章存档

  • 最新评论

    • : 少了的两个类还是没有添加啊,until n...
    • Gao Ang: 当然可以的,在五月底或六月初会应...
    • Guo Ping Yang: 愿灾区人民早日重建家园,愿祖国更...
    • Cijing: 这本书哪里可以买到?能网购吗...
    • Gao Ang: WPS的三个接口是对封装功能的操作进...
  • 热门主题

  • 随机阅读

    • 七月 2008
      « May    
       123456
      78910111213
      14151617181920
      21222324252627
      28293031  
  • 联系方式

      GaoMiao's Hotmail
    • GaoMiao's QQ
    • GaoMiao Profile

      GaoMiao's Portrait
      有了理想
      就不要寻找放弃的理由
      Student & Practicer

      站点搜索

    • 只言片语

      “The concept is interesting and well-formed, but in order to earn better than a ‘C’, the idea must be feasible.”-A Yale University management professor in response to student Fred Smith’s paper proposing reliable overnight delivery service (Smith went on to found Federal Express Corp.)
    • 年青人求知欲很旺,而忍耐性不足。 ——郭沫若

    物理运动模拟引擎

    31st 五月 2008

    Phun源自于瑞典UMU大学硕士生的毕业论文,可以模拟物体的各种物理运动规律。使用者可以通过鼠标绘图来创建物体,并让物体实验重力、摩擦力、弹力、加速度等等不同的物理规律。

    C++编写的Phun使用了OpenGLGLEWSDL(用于窗口管理)SDL_image(用于读取图像)以及boost等类库,目前Phun提供了Windows和Linux版的免费下载。Phun为我们展现二维物理规律的模拟,实现运动引擎的开源库还有Java实现的Phys2D和C++实现的Box2D项目。

    三维物理运动模拟方面,在Playstation 3,XBox 360,Nintendo Wii等平台的游戏设计上,曾有不错表现的3D游戏引擎Blender同样使用C++实现,使用Java实现的类似引擎还有JBullet,JBullet给出了在线演示的3D。

    除此之外,还有大力推荐的Ubigraph,这是一个图论动画生成工具,可以快速生成图论模型并展示其三维结构,演示各种图论算法推算的过程。

    相关的项目还有很多,在iPhone平台上,类似的运动模拟引擎是Oolong Engine 2,开发者在站点上放置了在iPhone上模拟的视频。好玩的东东还有Bullet等等,以后或许一有用,先记录在这里。

    Posted in 诸子百家, 兴趣爱好 | No Comments »

    开源技术选型手册推荐

    17th 五月 2008

    期待了许久,《开源技术选型手册》一书终将面市。在封面水蓝色的背景下,长短不一的火柴排列成熊熊燃烧火焰的形状。博文的周筠老师告诉我,封面的寓意是”众人拾柴火焰高”。正是这样,就像书腰所注明的,本书是19位在各个不同领域内颇有建树的开发者共同所著,其中更不乏众多在开源领域中为大家所熟知的名字。

    “一册在手,选型无忧”,本书写作的初衷,也正是在浩如烟海的开源项目中,帮助开发者找到最好用最适合的可靠工具。回想起第一次在北大东门的万圣书园参加组稿会的情景,当时大家的样子还记忆犹新。相见的大都是老朋友,当然也有一些闻名但未能见面的新朋友,博文视点的朋友们和参与写作的作者们一起针对书籍的样例章节进行点评,来自CSDN的孟岩也给本书的写作提出了很多建设性的想法,最后由InfoQ中文站霍泰稳来负责书籍的统稿。

    秋去春来,历经了半年的准备与写作,《开源技术选型手册》一书终将于五月底面市。其间各位作者一直在通力配合,力争将负责的章节做到最好,博文视点的周老师、方舟、杨绣国以及参与编辑的朋友也为书籍的出版费了很多的心思。

    然而,书籍的出版时间正逢祖国四川省汶川发生7.8级大地震。灾情牵动着我们每位中华儿女的心结。在大家的倡议下,作者们纷纷将自己最真切祝福的话语附在书中,并连同大部分的版税收入,以不同方式不同形式捐献到地震灾区的抗震救灾工作之中,为灾区救援和生产生活的恢复尽到一份微薄的力量,帮助受灾的亲人重建家园。

    一方有难、八方支援;抗震救灾,天佑中华。希望我们会携手迎来美好的明天,也希望这本《开源技术选型手册》真正为每一位关注开源、支持开源的开发者带来最大的价值。

    Posted in 思维记录, 诸子百家 | 3 Comments »

    开放位置信息服务FireEagle

    22nd 四月 2008

    FireEagle是由Yahoo!推出,帮助用户在线分享地理信息的位置感知中间件。FireEagle完全使用Ruby on Rails搭建,最初是源自于Yahoo! Berkeley研究中心的ZoneTag项目。

    FireEagle为使用者提供了整合位置信息的平台,帮助用户向Web 2.0在线服务分享他们的地理位置信息,使用者可以通过基于FireEagle API开发的第三方应用,将包含经纬度在内的位置信息共享到FireEagle,或者是使用GPS设备将位置信息传送给FireEagle平台。

    在FireEagle提供的开放性位置服务平台辅助下,开发者可以通过安全、便捷的方式创建基于网络、移动设备以及桌面的位置服务应用。比方说Flickr相册,已经为用户在照片上添加位置信息提供了便利,这些信息可以被FireEagle获取并进行展现,为用户通过何时何地在何处的历史记录。使用者还可以在Facebook中集成FireEagle插件来感受一下FireEagle的用途。

    同时,FireEagle为使用者提供了数据控制和隐私保护措施,用户完全不必担心位置相关的个人资料及私隐的泄漏。用户可以在Fire Eagle 的数据库中将所有的私有数据清除,或者是在系统中进行设置,当有人试图跟踪用户的个人位置信息的时候,发送邮件询问用户是否将位置信息向授权人公开。

    目前FireEagle处在Alpha测试阶段,需要先在站点通过Email 注册申请,收到邀请之后即可使用测试,还可以使用为FireEagle提供了API封装的Ruby Gem包对其进行操作。预计FireEagle正式发布之后,将会有更多基于FireEagle的位置服务为我们带来新的体验。

    Posted in 思维记录, 聚焦GIS | No Comments »

    Microformats微格式的用途

    17th 四月 2008

    微格式(Microformats)是注入到Web页面中的小段信息,通过语意相关让信息块内容人机可读。微格式的采用可以帮助机器搜集、理解和处理Web页面所包含的内容。

    在Web页面上,允许的微格式数据包括事件、人物、地点等各种信息。这些微格式内容可被其他应用检测到,并提取其中相应信息,进而对信息进行索引、搜索或把信息以其他形式重用或组合。

    从技术上看,微格式表示的数据是一些语义标记,用标准的(X)HTML的形式表示。微格式尝试将常用元素的语义进行标准化,随之衍生了一系列新的表示方式,比如针对事件描述的hCalendar (源自于iCalendar 格式),针对个人和商务信息的hCard (源自于vcard 格式),以及针对新闻的存储格式hAtom (源自于atom 联合格式)等等。

    对于加入微格式的页面,可以在Firefox 浏览器中加入Operator 插件,来查看页面中附带的微格式信息内容。在Operator插件的辅助下可以查看hCard,hCalendar,geo等不同类型的微格式内容,并且可以方便的将内容导出到Google日历或Yahoo!日历等Web 应用中,实现站点内容的输出。

    Ruby语言实现的类库Mofo可以实现微格式解译,帮助开发者将HTML代码中的hCalendar事件或hCard等用户信息解析并展示出来。

    在页面中加入微格式的同时,也增加了Web 文档的语义。微格式不直接影响浏览器渲染文档的方式,并可以使Web文档更加具有智能特性,正在逐步被越来越多的开发者所关注。

    与此同时,微格式对于搜索引擎SEO 有着很高的价值,容易使站点对外暴露的数据轻松的纳入到搜索引擎的索引中,便于站点提供的信息在互联网上传播。

    Posted in 思维记录, 诸子百家 | No Comments »

    近期文字汇总

    3rd 四月 2008

    常在邮件列表中收到宇宙驿站崔老师发来的更新提示,催促我们时常更新博客内容。作为驿站大家庭的一员,我的站点最近更新也不太频繁,可能是写的东西不那么集中,都分散在各处了。试图将这些内容整合后放在一起,但是终究还是不太方便,所以就在这里简单列一下。

    前不久开通了新的SUN技术博客,目前分为GISJavaNetBeansOpenSourcePersonalResearchRubySun等几个大类。同时也会有文章或教程更新在Chinese Functional CA的团队博客上,这里的文章使用英文撰写,比方说Google Maps on Rails with NetBeans这篇Rails开发的教程。

    此外,一些原创的新闻和文章还发表在InfoQ中文站上,关注的方向主要是动态语言、开源项目和开源社区的发展,分季度的简单统计如下:

    07年第四季度:

    1. 开源文档《OSWorkflow开发指南》发布

    2. 从优秀到卓越:Rails发展之路

    3. 从Workshop起步:谈Rails专业培训

    4. 从Google看Ruby语言增长趋势

    5. 关注:Ruby 1.9版本即将发布

    6. InfoQ中文站Ruby社区2007年度十大新闻

    08年第一季度:

    1. 关注部署:谈Rails应用的最后一公里

    2. IBM网格计算:developerWorks专区使命完成

    3. NetBeans文档本地化项目持续推进

    4. 简体中文成为NetBeans博客大赛指定语言

    从07年11月份开始,帮程序员杂志撰写程序天下事的动态语言专栏,非常喜欢这个专栏,感觉这是到目前为止,写的最有意义的文字之一,争取再接再厉,做好为期一年的撰写。

    学习之余,周末和同学一起组织北郊登山队活动,拍摄科普宣传短片,只是MSN Sapce的文字,真的是疏于更新了。

    总体来看,还是比较能写的。期待今年还会有更多的惊喜等待在前面。

    Posted in 思维记录, 兴趣爱好 | No Comments »

    给研究起步者的忠告

    10th 三月 2008

    最近读到CMU教授Manuel Blum在给研究起步者的忠告一文中写到的内容,有些话语很有感触,摘录出来放在下面。

    1. 阅读:阅读的同时,用笔写下所读的内容,特别是在面对一些晦涩材料的情况下。
    2. 学习:写作和记录有助于提高你的能力和记忆力。
    3. 思考:遇到困难,自己完全有能力给自己找到解决问题的途径。理论束缚人的思想,实践解放人的思想。
    4. 方法:拿小的例子做实验,或者将问题放在一个假定的解决方案之中。
    5. 态度:无论你做什么,你得喜欢做它,以至于你可以在无人跟进的很长一段时间里,独立思考并研究它。
    6. 知识:应该对任何东西有所了解,并对某个东西彻底了解。
    7. 研究:专注于可以狭小到可以彻底理解的题目,然后坚持下去,就会越来越意识到,研究题目实际上已经包罗万象。
    8. 答案:往往我们不会得到预期的答案,答案可能是肯定或否定之外的其他东西。
    9. 困难:我们很难预料问题的答案。有时可能会被问题拖着,走向另外一个无法预料但正确的方向上。
    10. 盲点:所有人眼中都有盲点,但也会帮助塑造我们的智力和思维。
    11. 写作:首先要有东西可说,其次把它说出来,第三说完即止,最后拟一个正确的题目。
    12. 导师:并非所有导师都能阅读并读懂你的论文,但要保证同行可以读懂你的论文。

    注:Blum教授是理论计算机学大师,同时也是美国国家科学院(National Academy of Sciences)成员,同时感谢东北大学郝宪文的翻译提供参考。

    Posted in 思维记录, 诸子百家 | No Comments »

    Globus 4.0.6 on Ubuntu

    4th 三月 2008

    Globus项目发布了最新的4.0.6版本,在安全性、数据管理、处理过程执行方面有了不少改进。最近决定在Ubuntu 7.10平台上安装Globus 4.0.6,过程比预计的要顺利一些。Globus安装的流程和步骤,基本按照QuickStart教程中进行,还有一份不错的排错指南也帮了不少忙。

    由于通过源代码Build来进行安装的方式出错可能性较大,于是直接使用了Debian Sarge的安装包。值得注意的是,在安装过程中,需要启用Ubuntu的root用户,这样方便使用Globus的CA安全认证机制对用户提交的pem请求进行签名。还有,最好把Globus_Location写到环境变量里面,这样不用在每次启动命令行时用export命令导入。

    在启动Globus Container之前,需要使得用户通过Globus的CA安全签名,否则会提示认证错误。容器的启动,也没有使用指南中的shell脚本,而直接通过Globus目录中的globus-strat-container命令启动,之后得到在Globus默认的8443端口启动的WSRF服务实例。

    下面的实验还要慢慢做,初步的设想是:将写好的空间分析算法以WPS服务的形式从Tomcat迁移到Globus Container中发布,供基于uDig项目具备WPS插件的客户端调用。使用OGSA-DAI将异构数据源提供的矢量数据集成,在GeoServer中以WFS的方式发布,最好GeoServer也迁移到Globus Container中。uDig客户端加载WFS源数据,之后再调用网格容器中的WPS操作进行数据处理。

    顺便提一下,OGC刚刚正式通过WPS成为Web处理服务的标准之一,脱离了之前Proposal的状态,看来符合WPS标准的服务处理以后应该会有不错的发展。

    Posted in 网格科学, JAVA魅力, 聚焦GIS | No Comments »

    Mac上的非IE浏览器

    19th 二月 2008

    不得不承认,试图在Leopard平台上运行Windows的程序,的确是没有一点乐趣可言。

    由于临时在只有Mac的情况下要使用CMB的在线支付,所以需要找一款支持ActiveX的浏览器。然而为Firefox提供ActiveX支持的MyFirefox、IETab或是MediaWrap插件,也需要依赖Windows平台才可以提供ActiveX支持。于是开始尝试ies4osx,期望可以在Mac上运行原生的Win程序。在为Mac OS提供Windows程序运行环境的Darwine支持下,将IE 6在Leopard上跑了起来。

    先不说运行速度的问题,由于ies4osx需要X11的支持,安装之后IE的字体也是一大问题,需要一系列配置才可以正常在浏览器中显示中文。最后只好通过微软为Mac打造的远程桌面工具RDC 2.0来使用其他安装Win系统的机器登录CMB支付,不料却被CMB检测出使用代理机器登录网银,而中止了交易过程,无语中。

    不过在这个过程中,到时发现了不少非IE内核的优秀浏览器。大都以开放源代码的Gecko内核为主,Gecko是由C++编写的网页排版引擎,由最初的网景移交给现在的Mozilla基金会维护。在执行速度、对W3C标准的支持度方面,Gecko都不逊于IE内核使用的Trident引擎。

    Gecko引擎的领军者Firefox就不再多言了。在Mac平台上几个值得推荐的浏览器还包含有CaminoNavigatorFlock,特别是Flock,拥有非常Cute的界面,还集成了很多Web 2.0的常用元素。比方说delicious、Twitter、Flickr(顺便悼念一下之前的Flickr相册)、Facebook,还可以与朋友共享照片和读取订阅的博客,简直是个不折不扣的Web 2.0和SNS中心。不要总是让Windows挡住视线,就会发现,世界上还有其他靓丽的色彩。

    Posted in 诸子百家, 兴趣爱好 | 1 Comment »

    再见,developerWorks网格专区

    15th 一月 2008

    IBM developerWorks的网格专区,是我很喜欢并一直关注的板块,但不幸的是,今天IBM developerWorks的编辑团队宣布了专区即将关闭的消息

    非常感谢您一直以来对网格计算的关注,很高兴 developerWorks 可以为您提供关于网格计算方面最新信息。但是从现在起,网格计算专区今后将不再进行更新,因为我们决定关闭这个专区。

    无疑,这个专区对关注网格计算的同学们很有帮助,尽管从国外翻译到中文有一个时间差,但是资料对网格方面的入门和及时详细了解技术资料还是很有帮助的。本来计划撰写一篇OGSA-DAI 3.0架构与应用方面的文章投稿给DW,现在看来也可以省了。

    网格计算相关的技术一直以稳健的步伐向前发展,但离实际的应用还有一定的距离,一些面向商业应用的网格产品如IceGrid等往往与Globus也没有直接的联系。而IBM产品所涉及的网格计算环境,侧重于计算负载功能、信息与计算功能结合、信息和数据模型,采用标准面向服务的方式来管理计算和信息网格中的对象。

    尽管对于关闭developerWorks网格专区的决定有些遗憾,但IBM对于新兴技术,一直都采取积极开放的态度,比方说我关注的Mashup资源Ruby and Rails技术资源也在DW相继上线,为读者提供相关的技术资料。欣赏IBM DW一贯稳健专注的作风,为开发者提供各种技术最有价值的文章和教程,期望DW一直保持高品质的内容质量,为我们带来更多好的文章。

    Posted in 网格科学, 诸子百家 | No Comments »

    WSRT与有状态Web服务

    14th 一月 2008

    网格服务的标准由WS-Resource Framework (WSRF) 过渡到了WS-ResourceTransfer (WS-RT) 框架,WSRT在WS-Transfer的基础之上,增加了WSRF标准与WS-Management标准的特性,以便在不同组件之间方便的交换资源信息。

    网格为异构资源提供了在结构化的、受管的系统中进行通信和互操作的能力。在网格计算环境下,状态信息的保存十分重要。在Globus体系中,分布式异构计算环境的Grid Service在Web Service的基础上进行扩展,将状态信息加入到无状态的服务之中,并提供构建有状态Web服务的API。

    HTTP协议本身是无状态的,即服务器通过HTTP无法得知客户机是否已经关闭等状态信息。如果需要在资源传输中保持HTTP连接状态,需要由客户端保存的Cookie或服务端保存的Session来为HTTP记录用户的状态信息,再次与服务器取得连接时,就可以读取存放于HTTP响应头中的用户状态信息。

    同样,一般的Web服务是不需要包含资源状态信息的。Web服务中,消息传递、服务描述、工作流描述、服务发现与集成四个部分都以松散耦合方式连接,服务交互由序列化XML进行描述。服务客户端在根据WSDL描述提交参数之后,一次调用在服务端执行的处理并得到返回结果,即可完成服务执行的整个过程。然而,WSRF协议为Web服务提供了有状态资源的管理方式,而WSRT则在WS-Transfer的基础上,增加了WSRF的WS-ResourcePropertiesWS-ResourceLifetime两个组件的功能。

    网格技术在分布、异构的资源基础上实现资源共享和协同工作,从OGSA到WSRF再到WSRT,Globus采用可以保存资源状态信息的Web服务标准一直处在不间断的进化之中,为网格技术的实现提供有效的支撑环境。

    Posted in 思维记录, 网格科学 | No Comments »

    Mac平台的开源GIS

    8th 一月 2008

    在Apple的官方站点上,提供了Mac OS X系统平台上GIS的应用介绍,并给出Grass在Mac平台下运行的实例。Grass本身是基于GNU GPL协议的开放源代码GIS应用方案,全名为地理资源分析支持系统,可以说Grass是Unix平台下最早的GIS应用,用于数据管理,图象运算、图形生成、空间建模以及使各种各样数据的可视化。Grass拥有上百个GIS数据处理和分析命令,可以处理栅格、矢量等数据,并且可以创建、管理和存储空间数据。

    其实对于GIS这样需要处理大量数据的应用来说,使用 UNIX 操作系统无疑是最好的选择。Mac OS X系统本身建立在Mach 3.0和FreeBSD 5之上,命令与UNIX操作系统完全兼容,可以运行UNIX上的绝大多数应用程序,并且Apple上曾使用的PowerPC处理器,其浮点运算速度,甚至相比更高频率的Pentium CPU还要迅速。Mac OS X稳定、多任务、内存保护等优势,也是Win系统无法比拟的。在Mac OS X之上,可以使用bash,tcsh或ksh这样的Shell终端,同时Mac下也充满着emacs、vim这些编辑器的身影,程序编译时同样也离不开gcc、make和autoconf,在Mac之下,甚至还可以使用源于OpenSolaris的DTrace技术来提升应用的表现。

    开放源代码的GIS应用中,大多都可以直接运行在Mac OS平台之上。如UDig,MapServer都提供了针对于Mac OS的dmg格式镜像包。OpenOSX公司也为Mac平台提供了Grass的集成dmp安装包,可以免费下载使用。甚至是ESRI也提供了面向教学的Arcexplorer 9.2版本让Mac用户下载使用

    其实Apple本身是一个对开源持积极态度的公司,并且也为开源做出非常多的贡献 。Apple已经公开了Mac OS X 10.5 Leopard核心Darwin9的源代码,并且Apple也非常提倡在Mac OS上使用开源的软件。在Leopard系统的默认安装之中,就附带了如Apache、SVN、Ruby、Python等开源的代码。相信随着Mac用户的逐渐普及,使用开源GIS从事教学与数据处理的用户也会越来越多。

    Posted in 聚焦GIS, 兴趣爱好 | No Comments »

    Mac OS X体验总结

    31st 十二月 2007

    一直对Mac OS X操作系统非常倾慕,现在终于用上了新版的Mac OS X Leopard,不到一周的时间里,已经完全适应了将原来Windows下的工作转移到Leopard系统平台之下,一点小Tips,也记录在这里以备参考:

    • Mac的休眠默认为安全模式,如果想使用快速休眠,可以通过命令sudo pmset a hibernatemode 0进行切换。
    • 在Leopard中,中文字体显示比较小,可以通过设置DPI分辨率来增大字体,命令为defaults write -g AppleDisplayScaleFactor 2.0,如果恢复默认值,把2.0设置为1.0即可。
    • 部分安装的软件无法通过AppZapper卸载,可以进入到系统的/Library/Receipts目录中,找到相应的项使用rm命令删除。

    Mac系统下的各种软件应用,如系统本身一般,充满着灵气。安装的一些非常Cool的Mac软件,也在此一并推荐一下。如可以通过蓝牙设备遥控Mac的Salling Clicker,我使用的Nokia 6681就可以正确识别,并通过蓝牙传送S60的遥控客户端软件来遥控Mac上的各种程序,还可以用手机的按键来控制鼠标在屏幕上的移动。还有文本编辑器WriteRoom,它这样可以为写作者提供像白纸一样干净的界面,让人心无旁羁的专注于要写的东西,非常适合于用来培养诗人或作家。还有撰写这篇Blog的工具,就是用一款叫做ecto的客户端,ecto可以自动识别Wordpress等多种Blog平台,自动读取已有feed并通过xml-rpc将本地撰写的文章发送到服务器上。

    在Mac中,快捷键的作用是无法忽视的,毕竟键盘设置和普通的Win键盘不同,所以牢记有用的快捷键可以帮助实现键盘上没有的那些键的功能。Mac OS X Leopard系统目前还并非完美,比方说Windows下面的可执行程序,很难迁移到Mac平台下面,但毕竟有大量可以替代的应用来帮助我们完成同样的工作。而且,由于针对Mac系统的病毒较少,所以大多数情况下,不安装杀毒软件使用Mac也是非常安全的。

    Posted in 诸子百家, 兴趣爱好 | 4 Comments »