使用那种方案开发WebGIS(NetGIS)?(50分)

W

wtang

Unregistered / Unconfirmed
GUEST, unregistred user!
客户端,服务器端分别使用那种方式,效率如何?

 

吕雪松

Unregistered / Unconfirmed
GUEST, unregistred user!
推荐MapXtreme+Java前端的解决方案。如Go2Map.com
ChinaQuest.com也是Java前端,不过后台是自己开发的,很少能有人作到这种规模,建议
如果非很执着的话,走前者的路。
 
W

wangjerry

Unregistered / Unconfirmed
GUEST, unregistred user!
前端用Java或JavaScript。服务器端用ArcInfo。
 

吕雪松

Unregistered / Unconfirmed
GUEST, unregistred user!
wangjerry
不准确,应该是ArcIME。
 

吕雪松

Unregistered / Unconfirmed
GUEST, unregistred user!
<a href="http://www.esri.com/software/arcims/index.html"><img src="http://www.esri.com/software/arcims/graphics/arcims.gif" border=0></a>
ArcIMS provides the foundation for disseminating high-end geographic information
systems (GIS) and mapping services via the Internet. ArcIMS is the only software
that enables users to integrate local data sources with Internet data sources
for display, query, and analysis in an easy-to-use Web browser.
ArcIMS revolutionizes the way users can access and interact with Internet mapping
and GIS data by delivering distributed GIS to the desktop.
 
W

wtang

Unregistered / Unconfirmed
GUEST, unregistred user!
我是想研究使用三层结构开发WebGIS:空间数据如何在客户端和服务端之间传输,以及其传输
效率如何。
首先我想将空间数据以流的形式写到属性数据库中,通过现有的的管道如ODBC或者其他的方式进行
传输。但ODBC执行起来效率不是很高(?),对ODBC进行扩展是DELPHI很难做到的。
其次 制定统一规范的空间数据格式,将空间数据存到属性数据库中,这样在数据进行传输时
系统还是可以对其进行查询。即现在流行的空间数据引擎SDE;
再次 Corba技术的迅猛发展,使得在客户端和服务器端之间进行对象的互操作成为可能,所以杂
所以,利用CORBA对各式的空间数据库(ArcInfo,Mapinfo,ArcView,Maptitude...)进行管理,
那末利用CORBA技术开发网络地理信息系统(NetGIS)就不失为一种可行的方法。


我只是将自己的想法呈现给大家,希望诸位大虾讨论!谢谢!
 
W

wtang

Unregistered / Unconfirmed
GUEST, unregistred user!
怎末没人讨论?难道这里没有多少人开发GIS的?
 

吕雪松

Unregistered / Unconfirmed
GUEST, unregistred user!
首先我想将空间数据以流的形式写到属性数据库中,通过现有的的管道如ODBC或者其他的方式进行
传输。但ODBC执行起来效率不是很高(?),对ODBC进行扩展是DELPHI很难做到的。
<font color=red>这种方式的好处是在ODBC的平台上可以实现空间数据管理,也就是说不
用专门的空间数据库引擎就可以在现有的关系型数据库引擎上实现空间数据传输。有一定的
应用空间。但缺点也是显尔易见的:在需要拓扑数据的环境中效率很低甚至无法实现。</font>
其次 制定统一规范的空间数据格式,将空间数据存到属性数据库中,这样在数据进行传输时
系统还是可以对其进行查询。即现在流行的空间数据引擎SDE;
<font color=red>有二个难点:1,业界一直在制定统一的空间数据格式(www.opengis.org)
,但在短期内无法实现一个可期望的目标。2,现有的“空间属性数据库”还不是很完善,包括
SDE和ODE,只是能实现功能。</font>
再次 Corba技术的迅猛发展,使得在客户端和服务器端之间进行对象的互操作成为可能,所以杂
所以,利用CORBA对各式的空间数据库(ArcInfo,Mapinfo,ArcView,Maptitude...)进行管理,
那末利用CORBA技术开发网络地理信息系统(NetGIS)就不失为一种可行的方法。
<font color=red>值得关注,道路漫长</font>
 
Y

yova

Unregistered / Unconfirmed
GUEST, unregistred user!

我正在开发一个GIS,希望GIS高手们能多多指教,并与我email联系!
谢谢!!
 
J

jackliew

Unregistered / Unconfirmed
GUEST, unregistred user!
请教,是否可以说明GIS的体系结构以便我们讨论呢?
 
W

wangjerry

Unregistered / Unconfirmed
GUEST, unregistred user!
吕雪松

我的确不用IMS,我用Delphi做了一个软件代替了IMS。一下为公司节省10000do
llar.
 
Z

zhiyue

Unregistered / Unconfirmed
GUEST, unregistred user!
从网上学到的,再还到网上,恕我不指出原作者了。
希望有所帮助,我目前是个GIS的初学者。
--------基于Object Web规范的WebGIS可以称为分布式对象WebGIS,
这是WebGIS的最新发展方向。
目前,有两套不同的Object Web规范正在进行着激烈的竞争:
一个是Object Management Group和Javasoft公司的联合推出的CORBA/Java 标准,
另一个是Microsoft公司提出的DCOM /ActiveX标准。两个标准各有千秋,相持不下。
尽管Java编译器在不断改进,但是CORBA/Java 在运行速度上仍然不如DCOM/ActiveX。
和Java一样,CORBA/Java规范的最大优势仍然在于其跨平台能力,
适用于Windows、Macintosh、UNIX等,
而DCOM/ActiveX目前还只能运行于32位Windows系列操作系统。
不过,Windows系列操作系统的市场占有率达80%以上,在Internet客户端的计算机市场里,
其占有率则可能更高。究竟选用何种规范来开发WebGIS,
需要根据软件的设计目标来权衡各方面的因素。
--------在客户端使用矢量地图或者栅格地图。
如果使用矢量图形,一般需要在客户端事先安装插件(plug-in),
或者运行时自动下载Java Applet抑或ActiveX控件;
在客户端使用栅格图像则不需要而任何额外程序。
不过,正因为在客户端使用了插件、Java Applet或者ActiveX控件,
采用矢量图形方式可以在本地执行许多操作,比如:地图放大缩小、漫游、
就地选择并高亮显示,在一定程度上减少了服务器端的负载和网络上的数据传输量;
采用栅格图像方式,在客户端只能读得鼠标的x, y坐标,进行地图缩放、
平移和选择等操作都要传递x, y坐标到服务器端处理,
生成新的栅格图传递到客户端显示,增加了服务器和网络传输的负担。
 
W

wtang

Unregistered / Unconfirmed
GUEST, unregistred user!
大家是否来讨论一下XML在开发WebGIS中的作用:

OpenGIS 组织发布了GML2.0的规范.在1.0版本的基础上完善并制定了地理信息的XML的schema

///////////////////////////Translated form the Geography Markup Language (GML) 2.0
OGC Recommendation Paper, 20 February 2001///////////////
地理标记语言(GML)是一种XML编码方式,用来传输和存储地理信息,包括地理特征的空间和非空间属性 。
该规范定义了XML模式(Schema)的语法,机制和具体规范:
***为地理空间应用模式和对象提供一种开放的,供应商中立的结构框架
***允许支持合适的GML构架描述性能的主题
***支持专业领域和信息团体对地理空间应用模式进行说明
***能够对相互关联的地理应用模式和数据集进行构建与维护
***支持应用模式和数据集的存储和传输
***加强对地理应用模式和其所说明的信息的管理能力
开发人员可以决定使用GML存储地理应用模式和信息,或者他们可以根据需要
决定将一些其他的存储格式转换为GML格式,并仅仅使用GML来传输模式和数据。
///////////////////
而且Mapinfo,Arcinfo,Integraph公司正以GML为规范,开发基于XML的产品.
那末,以GML为共同的规范,开发一个空间数据引擎如何?开放程度如何?
客户端,中间层,服务器端 分别使用那种方式或技术?

 
W

wtang

Unregistered / Unconfirmed
GUEST, unregistred user!
吕雪松呢?wangjerry呢?
 

吕雪松

Unregistered / Unconfirmed
GUEST, unregistred user!
我对GML也一直在关注,不过现在前端对其的支持还不够。并且对于IE这种基于HTML超文本
结构的浏览器来讲,图形受到先天不足的影响。
 
Y

yysun

Unregistered / Unconfirmed
GUEST, unregistred user!
推荐一篇不错的入门文章:
Getting your Maps Online: An Introduction to GIS for the Internet
http://www.onenw.org/toolkit/webmapping
几乎包括了所有 web gis 的方案和很多参考 url。

目前的很多商业 server 都不令人满意,就连大名鼎鼎的 esri 随同 arcinfo8 一起推出
的 Arc ims 也简直象小学生的作品。

我预言,web gis 的突破将出现在 web 矢量地图方向,并且是thin client。
其中有些技术难关即将得到解决,例如 矢量的压缩/动态综合以及递增传输
http://greenwich.colorado.edu/babs/ottawa/Bfield_Ottawa.htm

应用方面现在的热点是"移动定位服务" Mobile Location Services,。
前不久在温哥华,location technology providers 和 location-based content providers.
进行了一次讨论和对话。
http://www.locationinawirelessworld.com/program/default.htm
看看参加的都是哪些巨头吧。
 
Y

yysun

Unregistered / Unconfirmed
GUEST, unregistred user!
为什么说矢量地图才是前景呢?因为它可以:
- 无失真放大缩小
- alpha 颜色效果 (图形对象有了透明度,产生叠加效果)
- 可做动画
- 可加入超连接
- 可加入多媒体信息,如声音。

几种 web 矢量图形格式的比较:

Flash SWF: 二进制(适合流传输),有非常普及(被打包在浏览器中)的阅读器
SVG: XML 格式,容易制作/阅读,W3C 标准,有阅读器(adobe的),效率好象不如 SWF。
GML: XML 格式,适合于地理内容的表达,没有阅读器,尚处于纸上谈兵阶段。

所以我目前的策略是 先使用 SWF,关注 SVG,等等 GML。
想看看我做的 SWF 格式的矢量地图吗?
http://bukoo.sourceforge.net/world.swf
http://bukoo.sourceforge.net/usa.swf
 
B

billhang

Unregistered / Unconfirmed
GUEST, unregistred user!
预言有理
 
W

wtang

Unregistered / Unconfirmed
GUEST, unregistred user!

SWF是以二进制的形式进行传输,在实现开放式地理信息系统时,怎能同XML比美呢?
正像孙老师所说的,当前GIS在应用方面发展的方向为:Mobile Location Service,这样看来
XML才是网络地理信息系统发展的解决之道。

服务器端统一将各种格式,各种平台下的GIS数据按照GML的规范写到XML中,数据以XML的形式通过网络
传到客户端,客户端将GML规范的GIS的空间数据转换成SVG显示出来,这种空间数据引擎前途如何?

 
Y

yysun

Unregistered / Unconfirmed
GUEST, unregistred user!
SWF 虽然没有提交 W3C,但是 macromedia 公布了 SWF 的格式。
它本身就是一个实际上被广泛采用的行业标准。

由于是二进制,SWF 体积小,SVG 经过 zip 压缩后,体积大致可以缩到 SWF 的数量级。
但是,二进制 SWF 的另外一个优势:流传输,压缩后的 SVG 仍然做不到。
所谓流传输(streamming)就是能一边传送,一边播放。
我做过试验,一个 1.5M 的世界地图放在不很快的网站上,一连上它的网页,先显示了
国家边界内容,然后一直不断在补充和细化其中的内容,如河流、城市...。感觉不错。
相反,试想如果是个 SVG,就必须全部下载下来,解压后再显示出来。这就可以解释
为什么 www.adobe.com/svg 下那个简单的莫斯科地图这么慢。

所以,在 SVG 浏览器解决压缩、流传输和XML分段解析以前,SWF 还是值得使用的。


 
顶部