gis
gis
管理员
管理员
  • 注册日期2003-07-16
  • 发帖数15945
  • QQ554730525
  • 铜币25337枚
  • 威望15352点
  • 贡献值0点
  • 银元0个
  • GIS帝国居民
  • 帝国沙发管家
  • GIS帝国明星
  • GIS帝国铁杆
阅读:2756回复:1

VRMap2的特点

楼主#
更多 发布于:2003-07-27 21:16
海量数据处理能力
 
??目前,在很多GIS行业应用中,用户都对系统提出了海量数据处理的能力。在三维地理信息系统领域,海量数据大致可分为两类,即地域广度意义上的和细节精细程度上的。从广度意义上来说,海量数据指地域跨度非常大的数据量,如整个北京市、全中国乃至全世界,如此地域跨度非常大的地图数据往往数据量大得惊人;从细节意义上来说,海量数据指那些接近真实视觉效果的数据。
VRMap采用了全新的核心技术来构架海量数据引擎,达到了广度海量和细度海量的完美统一。
在广度意义上,VRMap采用了金字塔数据结构来组织数据,使得用户在任一时刻浏览的数据都只是金字塔中的一个小角,从这个意义上来说,无论整体的广度数据多么庞大,都不会影响到VRMap在客户端的浏览速度。

??在细度意义上,VRMap采用了多种高级的图形技术来加速复杂结构的渲染,这其中包括多种 LOD 技术,全自动遮挡排除技术,快速模型生成技术等。

??由于三维GIS数据极端复杂,且数据量庞大,除了几何数据外,还包括大量纹理贴图数据。如此大的数据量,从载入到开始进入显示状态,常常要花很长的时间,有时甚至长达数十分钟。VRMap的金字塔海量数据引擎则采用了全新的动态载入架构,在大幅提高了浏览速度的同时也提高了载入速度,并实现了并行载入,即浏览和载入同时进行。并行载入使用户察觉不到载入所导致的任何停顿,因此也可称为“零时间载入”。

??海量数据的处理能力不仅仅只是浏览和查询,数据的编辑与更新也是一个必须解决的问题。由于VRMap采用了数据分布式存储技术,根据数据的元数据信息在客户端动态组装,这样用户对数据的编辑和更新就变得相当灵活,不需要考虑局部编辑之后,再与总数据组装。同时也在底层架构好了与空间数据库的接口,为空间数据的统一管理打好了基础。

??下面是一个应用案例,在这个案例中,显示了VRMap对广域数据和精细数据同时处理的能力。
??◆ 整个中等城市的全部数字线划图转化为三维景观。楼房共100,000栋。
??◆ 其中局部标志景观五处,精细度逼近MAX效果图,总数据量10G。
??◆ 有三个局部子场景,并可以进入室内观察,内部结构复杂,有光影效果(包括环境映射)。
??◆ 硬件配置:PIII600MHZ GeoForce3Ti200 VIA芯片组 256M内存 IBM40G

??测试结果:
??◆ 低空浏览速度>20FPS
??◆ 俯视浏览速度>15FPS
??◆ 调入速度<15秒
??◆ 最大停顿时间<3秒

 

三维矢量数据解决方案
 

??从三维GIS诞生开始,如何从传统GIS数据动态生成三维景观就成为三维GIS首要解决的问题之一。比如说:如何从数字线划图自动地生成城市景观、楼宇、公路、河流这些在二维GIS中仅仅是简单的线段和多边形,而在三维中却要赋予它们真实的表现形式。

?? 在传统地理信息系统中,采用矢量的点、线、面表示各类地物、自然现象,并且积累了大量的空间数据。面对大量矢量数据,VRMap提供了多种多样的转换方法,让广大用户轻松、快速利用原有数据生成位置准确、表现真实的三维景观。

?? 针对三维地形的快速生成,VRMap提供的导入器可以快速地根据原始的离散高程点数据、等高线数据、DEM、DOM数据,快速建立三维地形。
对于数字线划图三维可视化问题目前国内外同类产品一般采用栅格化方法,即将矢量数据通过预处理生成一张栅格图,并与底图叠合。这种方式在技术上实现简单,但其致命的缺点在于无法编辑,并且贴近观察时会出现马赛克。

?? VRMap在经过了长期的探索之后,自行研发了多种三维矢量数据表达方式,它们的显示效果远远超过了同类产品,且最大突出之处在于其动态性,即动态生成、动态编辑和动态更新。这些新技术的出现大大的弥补了传统三维矢量解决方法只能做展示的不足之处,使得直接在三维数据上进行查询、分析及编辑成为可能。

?◆ 单色线划图、单色面区域
??单色线划图、单色面区域是一种接近于传统GIS的表达方式,这种方式的优点是简单、快捷并能很好的和地形匹配。

?◆ 动态建筑物生成
??支持从平面数字线划图中快速地拉起城市建筑群。该技术可以直接从GIS数据相应字段中读取房屋的照片和楼层信息,并予以三维真实的再现。用户还可以为不同的房屋定义不同的屋顶类型,如人字形房顶、尖顶等。

?◆ 纹理地块
??在某些应用下,简单的用单色区域来表达可能并不充足,比如对于湖泊,如果带有水面效果,则表达会更逼真,而对于草地、土地等不同的地质区域,用相应的地质纹理进行覆盖,表现的力度也会得到加强。 VRMap提供了纹理地块的表现手段,很好的解决了上述的表现问题。

?◆ 矢量注记支持
??在目前国内外同类产品中,注记显示一直采用栅格方式,这种方式显示效果差,在VRMap中,新的矢量显示方式技术从TrueType字形中提取出字体轮廓,以矢量的方式进行表现,大大提高了注记的显示效果。在VRMap2.x版本中增加了三维文字显示方式,文字显示效果更加美观、清晰。

?◆ 匹配点、线、面技术
??在传统GIS中,一个点可能是一棵树或者路灯;一条简单的折线段可能是一条高速公路,也可能是铁路或者河流;一个面区域可能是湖泊,或者是树林、草地。而这些在三维中如何能够简单快捷转化为更贴近现实的表现方式,就成了一个关键问题。

??VRMap提供了新的方法,将不同类型的景观(树木、花草、路灯、路牌、天桥等)通过一个匹配模型动态合成在一起,动态生成了公路、铁路、树林、湖泊等的真实景观。
 组件式3D GIS 平台与二次开发支持
 

??VRMap 从其2.0版本就实现了全组件式体系结构。从VRMap2.0到2.X ,在规划、房地产、电信、气象、水利、地质等行业的成功应用,都充分验证了VRMap 组件体系结构的合理性、开放性、前瞻性、扩展性、成熟性。

??VRMap将系统分为驱动层、核心层、应用层、扩充集层。用户可以在任何一个层面进行二次开发,例如: VRMap2.X 在核心层、驱动层增加的海量数据处理能力、高级图形效果都可以方便地提供给用户使用。

?? 利用VRMap2.X成熟组件体系进行二次开发使用户可以针对具体的行业特点,开发出符合自身特殊需要的成熟的三维地理信息系统和虚拟现实应用,用户不用再一步步从底层做起,可以轻松获得三维地理信息系统和虚拟现实领域的最先进技术,同自己的业务紧密结合,开发出实用好用的系统。

?? 凭借VRMap2.X成熟的组件体系,VRMap 2.X的二次开发支持功能是国内外同类软件中首屈一指的。她支持的二次开发方式包括界面自定义、VBA开发、插件开发、自定义节点、SDK 开发、控件开发等。
VRMap2.X专业版提供了具有工业标准的Microsoft Visual Basic for Application(VBA)开发环境,用于脚本编程和定制工作。如果您在Microsoft Office系列产品下做过二次开发或者您熟悉Microsoft Visual Basic,您均能通过简单的方法获得您想要得到的结果。VRMap2.X的插件标准遵循Microsoft Visual Basic插件标准,任何熟悉Microsoft Visual Basic开发工具的开发人员均可快捷的开发出自己想要的插件功能模块。同时,VRMap2.X的很多的功能也是用插件进行实现的,您可以通过插件管理器对插件进行〖装载〗或者〖卸载〗。VRMap2.X为专业版用户提供了在Microsoft的Visual Basic以及Visual C ++ 开发环境下的插件工程向导,使得您可以非常方便的开发自己的插件。由于VRMap2.X整个平台层以及所用到的核心层都遵循COM标准,任何兼容COM的编程语言,如:Microsoft Visual C ++、Visual Basic、Borland Delhpi、C ++ Builder都能用于制定和扩展VRMap2插件。

?? VRMap2.X 企业版用户可以利用企业版自带的 VRMap SDK组件包进行开发,VRMap SDK将所有核心层的接口全部开放给二次开发用户,对于高级用户甚至可以进行驱动层的开发。用户可以在自己的系统中自由的利用VRMap提供的三维GIS组件,选用Visual Basic 、VC++等支持组件开发的语言快速开发,方便快捷地构建自己的应用系统。一个例子是:用户可以在支持二次开发的二维GIS平台(Super Map、Mapinfo、ArcInfo等)中方便的引入三维功能,充分利用二维GIS平台和三维GIS平台的优点,开发无缝结合的二维+三维应用。

?? VRMap2.X控件是VRMap产品的新成员,它采用了全新的设计思想,将插件和组件完美的融合,在二次开发构架上属独创,在VRMap插件开发与VRMap SDK开发之间搭起了一座桥梁。使得VRMap2专业版强大插件功能可以为SDK开发用户所用,一个功能只需要一两行代码。开发简单,大大简化了VRMap SDK开发。原先2-3百行的代码用控件开发只需5行代码。下面是使用VRMap控件开发的一个简单的浏览器代码示
例:
VRMapX2Win3D1.VRMapX2Control = VRMapX2Control1
VRMapX2Control1.StatusBar = StatusBar1 '设置状态条
VRMapX2Control1.ProgressBar = ProgressBar1 '设置进度条
VRMapX2Control1.LoadPlugin ("VRMap1.VMOldPlatform.1")
VRMapX2Control1.SceneFile = "2.vm2"
一共只需要5行代码,就可以编写一个可以浏览VRMap三维场景数据的浏览器程序。

?? VRMap2.X企业版全面支持控件二次开发,VRMap所有的功能插件都可以免费提供给企业版用户,更重要的是VRMap2.X企业版已开始提供全新的功能服务。随着VRMap的核心层的成熟,VRMap将更注重提供实用的专业GIS分析等功能,并且会快速响应用户的功能需求,为用户制作实用工具,以插件方式提供给用户使用,企业版用户只需要几行代码就可以将这些功能加入到自己的应用中。
 完整的空间数据描述体系
 

??VRMap将各类对象进行归类,并且针对某一类对象定义数学模型,形成一类结点。任何结点对象均可以成为另一个结点的子结点。父子结点之间的关系通常为空间关系上的绑定关系。例如为大家熟悉的DEM就是一种数学模型,利用这种数学模型创建了地形结点,依附于地形上的道路、河流等都可以作为其子结点。这样,对于人、天空、飞机、汽车等都可以通过定义一类结点用于描述。每个结点都有自己的参考系,自己的空间信息和属性信息,并归属于其父坐标,所有结点通过世界坐标统一。

??利用这种空间描述模型,VRMap先后扩展出了矢量地物、曲面模型、粒子系统、洪水结点、气象场结点、水流场、地质体等结点。对于三维空间的描述日益完善,并且所有的SDK二次开发用户都可以通过自定义结点的方法加入自己的模型。而且一旦有一种成熟的空间描述模型,就可以将其加入到VRMap结点体系中来。这样VRMap可以描述各种各样的客观对象,而不仅是建筑场景。

 强大的数据库驱动引擎
 

??VRMap可以通过标准商用数据库来管理海量三维数据。三维数据的数据库管理与传统GIS数据不同的是,三维数据的数据量远远超过了传统GIS,用于描述真实复杂结构的精细模型和材质贴图使得数据量成倍的增长;另一方面,三维GIS系统所要求的实时性对数据库系统的性能提出了很高的要求。如何使用现行的商业数据库来满足这些苛刻的要求,成为三维GIS系统需要解决的问题。

??VRMap通过基于结点的属性绑定、分层管理技术和R树技术管理空间数据和属性数据。另外采用了皮肤+骨架技术,并借助分布式存储、分布式运算技术解决了海量数据的存储与动态载入、显示的问题。

??VRMap将数据按照空间关系划分成多个块,每个块由多个结点构成。在VRMap中任何场景对象均可以描述成为〖结点〗,地形、摄像机、灯光、媒体、控制器、触发器、粒子系统等等均为结点对象。任何结点对象均可以成为另一个结点的子结点。父子结点之间的关系通常为空间关系上的绑定关系。基于结点的空间描述模型使得在描述真实空间时变得简单和易于理解,同时很好解决了空间场景与数据库的绑定问题:结点在VRMap中是一个数据单元,对应于数据库中的一条记录,VRMap的每个图层都可以和数据库表进行绑定,通过绑定,用户可以在图形数据和属性数据间进行双向查询,如查询指定点位的属性信息或查询符合某个属性特征的对象的空间位置。只要是支持ODBC的数据源就可以绑定到场景对象中。数据属性记录与结点的绑定是一种非常灵活的绑定方式。用户可以根据自己的要求通过使用VBA宏编制更适合自己需求的数据库绑定方式。绑定数据库记录后,用户在数据库属性窗口中就可以察看到绑定的记录。

??VRMap的数据库技术建立在工业标准之上,使用Microsoft的ADO/OLEDB的万能数据访问标准(UDA)来访问和管理数据。二次开发用户可以通过工业标准的访问方式SQL语言来操作数据。VRMap通过多层数据缓冲来实现从服务端到客户端的数据过渡,这种机制与基于金字塔的渲染引擎紧密结合在一起,解决了浏览速度要求与传输瓶颈之间的矛盾。

 



<img src="images/post/smile/dvbbs/em10.gif" />
喜欢0 评分0
游客

返回顶部