地球信息科学理论与方法

二维矢量线符号在三维地形表面的贴合渲染方法

  • 谈心 ,
  • 佘江峰 , *
展开
  • 1. 南京大学地理信息科学系,南京 210023
  • 2. 江苏省地理信息技术重点实验室,南京 210023
*通讯作者:佘江峰(1969-),男,江苏扬州人,博士,研究方向为地理信息系统及其应用。E-mail:

作者简介:谈心(1990-),男,江苏南京人,硕士生,研究方向为三维GIS及其应用。E-mail:

收稿日期: 2015-10-10

  要求修回日期: 2015-11-09

  网络出版日期: 2015-12-20

基金资助

国家自然科学基金项目(41371365)

A New Method of Rendering 2D Vector Line Symbols on 3D Terrain Surface

  • TAN Xin ,
  • SHE Jiangfeng , *
Expand
  • 1. Department of Geographic Information Science, Nanjing University, Nanjing 210023, China
  • 2. Jiangsu Provincial Key Laboratory of Geographic Information Science and Technology, Nanjing 210023, China
*Corresponding author: SHE Jiangfeng, E-mail:

Received date: 2015-10-10

  Request revised date: 2015-11-09

  Online published: 2015-12-20

Copyright

《地球信息科学学报》编辑部 所有

摘要

二维矢量符号是二维地图的重要组成部分。如何将二维矢量符号准确地贴合渲染在三维地形模型表面是地理信息科学的研究热点之一。针对线状矢量要素(简单线和周期线)中现有方法存在的周期线周期分布不均、渲染精度低、性能受地形模型复杂度影响大、矢量要素与地表贴合不紧密等问题,本文提出了一种基于屏幕像素进行投影反算的渲染方法,以及基于地表延伸长度的周期判断方法。该方法通过预处理计算线要素贴合在地表的真实长度,并将线要素按其实际宽度进行面域化处理;实时计算每个屏幕像素在二维矢量平面内的覆盖范围,通过该范围与矢量面域的位置关系筛选位于其内部的像素;进一步通过线的实际长度进行周期判断以确定像素色彩值。整个过程通过CPU-GPU并行异构计算模型实现,提高了场景交互性能。实验表明,本方法具有周期分布均匀、渲染精度高、贴合结果真实准确和性能不受地形模型影响等优点。

本文引用格式

谈心 , 佘江峰 . 二维矢量线符号在三维地形表面的贴合渲染方法[J]. 地球信息科学学报, 2015 , 17(12) : 1483 -1489 . DOI: 10.3724/SP.J.1047.2015.01483

Abstract

Two-dimensional (2D) vector symbols are important components on 2D maps. How to accurately overlay the symbols on the three-dimensional (3D) terrain surface becomes one of the research hotspots in geoscience at present. This paper proposes a method for mapping the 2D vector lines (simple lines and periodically changed lines) onto the 3D terrain model based on the inverse projection of screen coordinates, with an additional period judgment based on the spread lengths of lines on terrain surface. The method solves some problems that might occur within other existing methods, for example: the poor rendering accuracy, being sensitive to terrain model complexity, not fitting in the terrain surface tightly, and so on. The key steps of the method include: calculating the spread length of the overlaid lines on terrain surface and extending them into polygons during pre-processing; projecting every screen pixel to the 3D world space and then to the 2D vector plane, and ruling out the pixels that are out of the range of the polygons; setting the color for each of the remaining pixels in terms of the result of period judgment based on the spread lengths of lines on terrain surface. Attribute to a CPU-GPU heterogeneous parallel model, the running performance is improved evidently. The lines can be authentically overlaid on the terrain model and with its running performance independent to the complexity of terrain model. The final rendering effect shows that the periodically changed symbols can be evenly distributed over the line with a high rendering accuracy on screen.

1 引言

矢量要素是二维地图的重要组成部分,具有抽象、概括、区分和强调空间地理现象与规律的功能,尤其在表达空间拓扑关系方面具有不可替代的优势[1]。随着人们对地球空间认知水平的不断增长和计算机图形学的快速发展,地理信息可视化方面的关注点与需求逐渐从二维制图向三维虚拟仿真与交互过渡[2]。但较二维地图而言,沉浸在三维虚拟环境中的用户更易产生对周围纷繁复杂的地理现象的迷失感与混淆感,因此,使用合理方法将矢量要素引入三维地理环境成为目前的研究热点[3]。然而,以线状要素为例,使用现有方法将其贴合在三维地形表面可能会出现悬浮、穿刺、走样、断续等视觉误差[4-5]。而对于类似境界线、铁轨线等周期变化的复杂线符号,还未有针对性的研究,而使用现有方法得到的渲染结果易出现周期分布不均匀,贴合结果不真实等误差,极大影响了观察者对地理环境的拓扑认知和主观观感。一些屏幕渲染方法虽然达到了高精度和准确性,但因其交互运行性能过低而难以广泛应用[5]
为了消除现有方法中存在的某些视觉误差,例如,纹理走样、穿刺、悬浮、断续、周期变化不均匀等现象,本文提出一种新的屏幕像素投影反算及空间关系判断的方法,旨在将二维简单线与周期线准确贴合渲染到三维地表,并达到可实时交互级别的运行性能。

2 二维矢量要素渲染至三维地形的方法

目前,根据算法思路和技术特点可将二维矢量要素贴合渲染到三维地形表面的方法分为4种[6-7]:基于纹理映射的方法、基于几何映射的方法、基于阴影体的方法和上述几种方法混合的方法。
基于纹理映射的方法是将矢量直接栅格化到地形模型二维纹理中,再以标准方法渲染出来。这类方法的优点是不会在实时渲染中产生针对矢量要素的额外性能开销。然而,地形模型纹理为具有有限分辨率的栅格影像,因而在场景缩放过程中栅格化的矢量边缘易产生锯齿走样现象,严重时将使用户对原始矢量形状判读错误。Kersting等于2002年提出建立基于视点的矢量纹理细节层次模型(view-dependent LOD)来解决走样问题[8],即通过判断当前观察用户的视点远近,决定矢量纹理的细分度,使在任何视距下都避免产生锯齿效果。但这个方法会在交互过程中频繁调用p-buffer进行纹理计算从而降低交互性能。陈鸿等提出一种通过透视投影生成矢量纹理的算法[9],但在视线平行于水平面的远处及地形陡峭处使用该方法仍然存在可观察到的走样现象。李融等在此算法的基础上作出了改进,即使用GPU并行计算生成纹理坐标,提高了纹理方法的实时运行性能[10]
基于几何映射的方法是将矢量要素当做单独的模型处理,使其与起伏的三维地形精确匹配,以达到贴合效果。Wartell等首次提出了这种算法并将其应用于折线上,具体方法是根据地形模型的几何特征点在矢量数据中插入和删除结构点,动态生成与之相匹配的几何模型[11]。然而,由于地形LOD的存在,地形模型结构复杂且实时变化,使用该类方法渲染的矢量模型极易出现悬浮、淹没在地形模型之外的现象,且额外的实时几何计算开销很大,运行性能受地形数据复杂度与数据量影响很大。邹烷等采用在预处理阶段将矢量数据集成到地形LOD模型中的方法[12],但会导致静态数据量的显著增加,并不适用于规模较大的地形数据。
基于阴影体的矢量渲染方法由Schneider等于2007年提出,思路是将二维矢量在三维地形表面的正射投影作为矢量面域[13]。具体步骤为将二维矢量沿正射方向拉伸为阴影体;逐像素计算像素中心点投射出的光线与地形表面的交点,并判断交点与阴影体的内外关系,生成反映阴影区域的二值化屏幕掩膜;将掩膜添加到三维场景中造成视觉贴合感。该方法具有像素级别的渲染精度,且交互性能不受地形模型复杂度影响。但在渲染宽度小于一个屏幕像素的矢量线时易发生断续现象(采样中心点未落在矢量内部),且Yang等提到使用该方法渲染较大规模或较复杂的矢量数据时,几乎不可能达到实时可交互的性能(<10 fps)[5]
混合方法即组合上述3种方法中的若干种,形成新的矢量渲染系统。具有代表性的是Yu等提出的二维GIS向三维空间扩展的应用系统[14]。在该系统中,矢量图层渲染采用基于OpenGL的纹理处理方法,以达到最快的性能,而在局部动态添加编辑矢量符号时,则采用了基于KML的几何方法对正在编辑的矢量进行渲染预览。目前一些三维渲染引擎也支持多种方法渲染,例如OpenSceneGraph(OSG)支持使用上述3种方法对不同图层的矢量数据进行同时渲染[15]
地图学中,线状矢量符号可分为基本线(如单色实线)、周期线以及其它复杂线,周期线的典型例子如黑白交错的铁轨线和虚实相间的境界线。目前,从可查阅到的文献资料来看,还没有专门针对周期线在三维地表的渲染方法的研究,但在某些相关研究中也提到了使用现有方法渲染周期线的案例,例如Yu等研究中的虚实线和Döllner等研究中的铁轨线[14,16]。然而,从这些研究的效果图中可清楚地发现,周期线都是由二维空间直接向三维地表垂直映射,当这些线经过山坡、峡谷等地形起伏较大的区域时,在地表上一定会出现周期长度分布不均的问题。

3 基于屏幕像素进行投影反算的渲染方法

本方法的主要思路是:通过屏幕空间投影反算(屏幕空间向三维空间投影,再向二维矢量空间投影)获得每个像素在二维矢量空间的覆盖范围,通过该范围与矢量的位置关系(周期线需额外经历周期判断)得到该像素的最终色彩值。该方法属于基于屏幕的渲染方法,克服了现有方法存在的一些视觉误差,并首次提出了准确渲染三维周期线的规则,具体技术路线如图1所示,分为如下步骤:(1)读取地形和矢量数据;(2)计算线要素在地表的实际贴合长度;(3)对线要素进行加宽处理;(4)将像素由屏幕空间向二维矢量空间进行投影变换;(5)判断投影转换后四边形与矢量面域位置关系;(6)对矢量内部(含边界)的像素判断其位于周期线内的哪个部分;(7)将这部分像素的色彩缓存值修改为周期内该部分的颜色。其中,步骤(1)-(3)为预处理,步骤(4)-(6)为实时计算。
Fig. 1 Technique route

图1 技术路线图

3.1 线贴合长度计算

在二维地图渲染时,周期变化线只需要在二维平面内等间距地排列相同的周期样式即可体现出真实的变化规律。然而,在高低起伏的三维地形表面,如仍使用垂直方向的二维周期性映射,坡地的周期一定比平地的看起来长(图2)。因此,需沿三维曲线的实际延伸方向建立周期性映射,即周期按线的延伸方向规律排列,使观察者沿各个方向看都不会发生周期长短不一的情况。
Fig. 2 Different cycle distributions of the cyclical-changed line symbol

图2 周期变化线的不同周期性分布示意图

谈晓军等在研究中总结出线符号都有一条有形或无形的定位线[17],假设贴合在地形表面的一条复杂线的定位线在3个坐标轴方向的位移量微分为 Δx , Δy , Δz ,则矢量线实际贴合长度为式(1)。
lim Δx 0 Δ x 2 + Δ y 2 + Δ z 2 (1)
在计算机预处理中,各坐标轴通常使用0.01到0.1单位长度为间隔进行离散采样,并累加得到整条线的长度。

3.2 线的面域化处理

Kraak提出宽度随比例尺缩放而变化(map scaling)是渲染线状地图符号的4大关键要素之一[18]。在三维地理环境中,随观察者视点的频繁改变和场景的频繁缩放,如果矢量线始终为一个像素宽度,会给观察者产生视觉上的不真实感和悬浮感。解决方法是在预处理过程中赋予矢量线世界坐标下的实际宽度,将线状符号面域化,以增强真实感。具体做法为:根据线的实际宽度在每条折线两侧生成平行线,延长或缩短每条平行线保证两侧首尾相连,最后封闭两端形成面状缓冲区,优化后效果如图3所示。周期变化线的面域化策略与单实线相同,在预处理的周期生成以后对各周期进行加宽。Vaaraniemi等在折线连接处使用了扇形使过渡更为平滑[7],但一般情况下,其对视觉效果的影响基本可忽略,为减少性能消耗,也可不做处理。在面域化的过程中,每条边保留指向面域内部的法向量,以减少像素点内外判断的计算成本。对于面域,渲染过程不再是“相交即着色”,而是与面域边缘相交或整个像素处在面域内部的像素均替换为矢量颜色。
Fig. 3 Width optimization of line

图3 线宽优化效果图

3.3 像素的投影反算

在三维地理场景的实时交互渲染中,需判断哪些屏幕像素要被渲染为矢量颜色。投影过程涉及3个坐标空间分别为:(1)设备屏幕空间,对应一个平面直角坐标系;(2)模型所在三维空间,对应真实的三维地理坐标系;(3)二维矢量空间,即三维空间的正射投影面,对应另一个平面直角坐标系。显示设备上的每个像素都可根据当前的相机参数和深度缓存计算得到其4个角点在地形表面的三维空间坐标值,再根据正射投影获得像素在二维矢量空间内的覆盖范围,该范围通常呈现为不规则四边形。然后,根据该不规则四边形与矢量线面域之间的二维位置关系,将像素分类并制定不同的渲染策略。由于整个坐标换算过程相当于一个标准三维渲染管线中逆向的投影过程,将其命名为投影反算。
三维渲染管线中,由世界坐标系变换至屏幕坐标系需经历观察变换、投影变换和视口变换3个变换过程,每个变换过程可用相应的变换矩阵来描述。若设屏幕中的显示设备坐标为windowCoord,其在三维场景中的世界坐标为worldCoord,摄像机的观察矩阵(View Matrix)为VM,投影变换矩阵(Projection Matrix)为PM,视口变换矩阵(Window Matrix)为WM,则由屏幕坐标获取世界坐标的逆变换过程可表示为式(2):
worldCoord = windowCoord × Inverse ( VM × PM × WM ) (2)
式中,Inverse为矩阵求逆。将每个像素计算得到的4个worldCoord(Xw, Yw, Zw)值取其二维正射投影坐标点(Xw, Yw),组成的不规则四边形即为其在二维矢量空间的投影覆盖范围。

3.4 周期的判断方法

贴合于地形表面的矢量线的每一条折线段的实际长度要在预处理中计算生成,而像素着色过程需在像素投影变换后增加一次独立条件判断,即通过建立一个矢量面域内部的坐标系来判断像素的投影范围位于复杂线的哪一个周期样式内,进而确定像素着色。如图4所示,对于三维空间内一条面域化处理后的周期线,其矢量内坐标的x轴为该周期线的定位线延伸方向,y轴为垂直于x轴的方向。某像素通过投影变换得到其在二维矢量平面内的投影范围P1,经过进一步计算(使用上述预生成的指向面域内部的法向量快速判断)可确定该范围位于矢量面域以内,采用以下步骤进行周期判断:(1)计算得到距离面域中心线距离(y值);(2)计算该投影点到线起点的实际长度L(上述预生成的各折线段实际贴合长度,即x值);(3)假设待渲染矢量线单个周期长度为T,根据L除以T得到的余数,判断P1像素属于周期的哪个分段内;(4)将P1的色彩缓存值更改为该周期分段应渲染的颜色值。如此,线要素可以保证周期在地形各处长度均等。
Fig. 4 Diagram of period judgment

图4 周期判断方法示意图

4 测试实验与分析

4.1 效果测试

利用三维渲染引擎(OpenSceneGraph)分别实现本方法与其他方法并比较分析贴合渲染效果。图5(a)为使用纹理方法(图来自文献[4])渲染矢量的效果,受纹理分辨率影响,矢量边缘出现极为明显的锯齿走样现象;图5(b)为使用几何方法(在线上增加插值点并独立渲染)渲染矢量的效果,在地形变化剧烈的局部地区出现了线穿刺淹没于地形模型内部的现象;图5(c)为使用本方法渲染简单线的结果,线要素被准确、真实、光滑地贴合在地形表面,不会出现边缘走样与穿刺于地形等视觉误差;图5(d)为使用本方法渲染周期变化线(铁轨线)的结果,线要素在起伏变化的地形表面呈现均匀的周期分布,不会出现二维周期映射的周期在局部被拉伸、周期分布长短不均等视觉误差,表明本方法渲染结果不会出现其他方法中的视觉误差现象,以及周期变化线符号屏幕渲染的具有正确性与合理性。
Fig. 5 Paralleled rendering of vectors on terrain surface

图5 二维矢量在地表的并行渲染效果

4.2 性能测试

本方法在保证视觉效果的前提下,需要使三维渲染性能达到可实时交互水平。基于屏幕的矢量贴合渲染方法涉及较多的像素计算,如每一帧都采取CPU串行计算将难以达到实时交互性能。由于设备上每个像素都需要进行的操作具有很强的同质性,因此可采用GPU和CPU协作来提高实时交互性能。其中,CPU处理串行部分(图1中的预处理3个步骤),GPU负责并行部分(图1中实时计算的步骤)。异构计算具体过程描述为:(1)CPU读取当前相机的深度与色彩缓存;(2)将缓存信息传送到GPU;(3)GPU分块并行计算出结果;(4)将结果渲染在屏幕上并回到步骤(1)。算法测试的软硬件环境如表1所示。
Tab. 1 Hardware and software environment associated with algorithm developing and running

表1 算法开发与运行平台软硬件环境

项目 参数
中央处理器 (CPU) Inter® Xeon® CPU E5-2609 0 @2.4 Ghz
图形处理单元 (GPU) NVIDIA® Quadro® 4000 2GB RAM
三维开发引擎 OpenSceneGraph (OSG)
GPU并行工具包 NVIDIA® CUDA v5.5
地形与矢量数据处理工具包 Geospatial Data Abstraction Library (GDAL)
并行部分采用NVIDIA® CUDATM实现。CUDA具有Grid-Block-Thread 3层架构,本方法将屏幕分割成若干个Block(即并行块),不同块同时执行相同的计算以增加速度。如表2所示,通过控制变量方法,对并行块数量、屏幕分辨率、地形数据量和矢量数据量4个因素分别进行12组性能测试。
Tab. 2 Experiments on real-time performance

表2 实时性能测试

序号 矢量数据量
(顶点数)
地形数据量
(三角形数)
地形
LOD层
窗口大小
(宽×高,像素)
并行块数量 并行块大小
(宽×高,像素)
仅渲染地形时帧速(fps) 渲染地形与矢量时帧速
仅CPU(fps) CPU+GPU(fps)
1 2134 3048 3 600 × 400 4800 10 × 20 75.9 1.1 29.8
2 2134 3048 3 1024 × 768 4800 10 × 20 68.3 1.1 22.1
3 2134 3048 3 1200 × 800 4800 10 × 20 60.8 <1.0 20.2
4 2134 3048 3 1200 × 800 1600 20 × 30 - - 12.6
5 2134 3048 3 1200 × 800 2400 20 × 20 - - 19.5
6 2134 3048 3 1200 × 800 9600 10 × 10 - - 20.2
7 1640 3048 3 1200 × 800 4800 10 × 20 - - 23.3
8 4101 3048 3 1200 × 800 4800 10 × 20 - - 15.5
9 10 171 3048 3 1200 × 800 4800 10 × 20 - - 5.8
10 2134 1468 1 1200 × 800 4800 10 × 20 - - 20.1
11 2134 10 475 5 1200 × 800 4800 10 × 20 - - 20.1
12 2134 22 530 9 1200 × 800 4800 10 × 20 - - 20.0
从性能测试中可发现:(1)从第1-3组实验中得出,算法受屏幕分辨率影响,窗口越小算法性能越高;(2)从第3-6组实验中得出,并行块数量越多,算法性能越高,但超过一定数量后不再提示;(3)从第3、7-9组试验中得出,算法受矢量数据量影响,矢量数据量越大,算法性能越低;(4)从第3、10-12组试验中得出,算法不受地形数据量和数据复杂度影响。

5 结论与讨论

本文将二维矢量线状符号作为研究对象,针对周期性变化的线符号,将其渲染到三维地理场景中。使用基于屏幕像素投影反算和空间判断方法对线要素进行渲染,并将周期线的周期变化性映射到线的延伸方向上,使周期分布真实合理,不会出现视觉上的周期不等距现象,并达到了一个屏幕像素的渲染精度,避免了现有方法可能产生的不合理现象(如走样、断续、悬浮和穿刺等视觉误差)。此外,使用GPU并行方法提升渲染性能,达到了可实时交互的层次。
该方法独立于所使用的地形模型,渲染性能不受地形模型复杂度和数据量大小影响。但和现有基于屏幕的矢量渲染方法相同,实时渲染性能也受二维矢量的数据量及显示屏幕的分辨率这2个因素的影响。
投影反算的优化是下一步研究重点,将相互独立的矢量投影计算过程和屏幕渲染过程融合起来,进一步提高实时交互性能。同时,将研究对象从线状要素向面状、体状要素及动态文字注记等方面 拓展。

The authors have declared that no competing interests exist.

[1]
李德仁,龚健雅,边馥苓.GIS 的数据组织与处理方法[J].测绘通报,1994(1):28-37.

[2]
王姣姣. 矢量数据三维可视化研究进展[J].广东农业科学,2013,40(8):183-188.矢量数据是地理信息系统中表示空间对象信息的一种重要数据结构。随着地形、影像等栅格数据可视化表达及融合技术的日益成熟以及多类型多分辨率数据量测获取技术的发展,矢量数据三维可视化作为恢复空间对象真实面貌的有效手段逐渐成为近年来新的研究热点。对大量文献进行归纳总结,将矢量数据三维可视化方法概括为三大类:纹理法、几何法以及阴影体算法,介绍了3种方法的基本概念、优缺点及应用现状,讨论了矢量三维可视化方法面临的关键问题,提出了今后重点发展及研究的方向:时空效率优化及高性能可视化表达,充分利用GPU硬件优势,构建基于球面模拟系统的多类型数据统一集成框架以及实现空间信息共享、计算和服务。

DOI

[3]
Prechtel N.On strategies and automation in upgrading 2D to 3D landscape representations[J]. Cartography and Geographic Information Science, 2015,42(3):244-258.3D scenes within all media indicate a societal preference shift toward 3D presentations. In spite of wide data availability and successful standardization efforts in 3D modeling, it is not a standard practice to offer large-scale topographic references to the end user in the form of 3D models. This motivates to propose automated strategies for the generation of closed 3D representations of a complete urban landscape, which at the same time account for capabilities of consumer-class devices. The campus of Dresden University of Technology served as a test case. The final appearance of the 3D model will be steered directly by the original geographic information system (GIS) data source. Such a 鈥渟chematic model鈥 displays source classes and attributes by nonphotorealistic rendering. A tested generic workflow can be presented, which programmatically integrates attributed 2D GIS entities and digital elevation model data, checks for compliancy with consistency rules and generates a slim geometric model. Only detailed GIS references can be considered to allow close-range visualization as needed in virtual walks. In delegating the geometric processing to automated workflows, playing room is gained for as well innovative as expressive texturing and, thus, design of the final 3D model.

DOI

[4]
Schneider M, Guthe M, Klein R.Real-time rendering of complex vector data on 3d terrain models[C]. Proceedings of the 11th International conference on virtual systems and multimedia, 2005:573-582.

[5]
Yang L, Zhang L, Ma J, et al.Efficient simplification of large vector maps rendered onto 3D landscapes[J]. IEEE computer graphics and applications, 2010,2:14-23.Real-time rendering of large scale vector maps over terrain surfaces requires displaying substantial numbers of polylines and polygons. The proposed approach simplifies such maps, permitting more efficient rendering and reducing latency in the display and manipulation of a virtual environment.

DOI

[6]
Xu Y, Sui Z, Weng J, et al.Visualization methods of vector data on a Digital Earth System[C]. IEEE 2010 18th International Conference on Geoinformatics, 2010:1-5.

[7]
Vaaraniemi M, Treib M, Westermann R.High-quality cartographic roads on high-resolution DEMs[J]. Journal of WSCG, 2011,19(2):41-48.The efficient and high quality rendering of complex road networks—given as vector data—and high-resolution digital elevationmodels (DEMs) poses a significant problem in 3D geographic information systems. As in paper maps, a cartographic representationof roads with rounded caps and accentuated clearly distinguishable colors is desirable. On the other hand, advancesin the technology of remote sensing have led to an explosion of the size and resolution of DEMs, making the integration ofcartographic roads very challenging. In this work we investigate techniques for integrating such roads into a terrain renderercapable of handling high-resolution data sets. We evaluate the suitability of existing methods for draping vector data ontoDEMs, and we adapt two methods for the rendering of cartographic roads by adding analytically computed rounded caps at theends of road segments. We compare both approaches with respect to performance and quality, and we outline application areasin which either approach is preferable.

[8]
Kersting O, Döllner J.Interactive 3D visualization of vector data in GIS[C]. Proceedings of the 10th ACM international symposium on Advances in geographic information systems, 2002:107-112.

[9]
陈鸿,汤晓安,谢耀华,等.基于视点相关透视纹理的矢量数据在三维地形上的叠加绘制[J].计算机辅助设计与图形学学报,2010(5):753-761.为了精确、高效地将传统二维矢量数据叠加到三维多分辨率地形上,提出一种基于视点相关透视纹理的叠加绘制算法.首先通过场景视点得到能充分逼近当前地形可视范围的透视投影,然后用该透视投影实时地将二维矢量数据绘制在与地形绑定的纹理上,同时在GPU中并行计算出纹理坐标.与传统的基于纹理的绘制方法相比,视点相关的透视投影能够提高纹理的像素利用率,从而减轻传统方法所产生的走样问题,提高矢量数据的绘制质量;且该算法不受地形几何数据的约束,能够与目前大多数多分辨率地形模型以及影像金字塔很好地结合在一起使用.

[10]
李融,郑文庭.三维地形高质量实时矢量叠加绘制[J].计算机辅助设计与图形学学报,2011,23(7):1106-1114.在高低起伏的三维地形上无缝叠 加二维矢量数据是三维地理信息系统可视化的必须功能.为了进一步提高矢量纹理的像素有效利用率,减轻走样,提出一种采用多级联的绘制方法来改进传统基于纹 理的矢量叠加绘制过程的算法.该算法采用深度剖分和屏幕空间分块2种策略对视域四棱锥进行分割,对子四棱锥内矢量进行级联绘制,并对绘制范围进行调整优 化,整个算法过程完整地利用了现代GPU可编程硬件来实现.实验结果表明,文中算法适用于大范围多分辨率地形上的矢量绘制,绘制过程达到了实时,绘制效果 令人满意.

[11]
Wartell Z, Kang E, Wasilewski T, et al.Rendering vector data over global, multi-resolution 3D terrain[C]. Proceedings of the symposium on Data visualization, 2003:213-222.

[12]
邹烷,方金云,刘金刚.混合多分辨率地形与空间矢量数据的可视化研究[J].系统仿真学报,2008 (z1):324-325.

[13]
Schneider M, Klein R.Efficient and accurate rendering of vector data on virtual landscapes[J]. Journal of WSCG, 2007,15(1):59-64.

[14]
Yu L J, Sun D F, Peng Z R, et al.A hybrid system of expanding 2D GIS into 3D space[J]. Cartography and Geographic Information Science, 2012,9(3):140-153.A hybrid system that integrates two-dimensional (2D) GIS and three-dimensional (3D) visualization has been developed to provide unique solutions to application domains where traditional 2D GIS and 3D visualization cannot alone provide a solution. In this paper, we focus on three key issues in realizing such an integrated system, including large-scale terrain rendering, 2D and 3D combination display (for example, rendering 2D GIS layers in 3D space), expanding traditional 2D GIS analysis functions into a 3D environment, and visualizing 3D geographical data. A generic framework is developed to integrate 3D visualization with various types of 2D GIS, such as commercial GIS software, open source GIS software and spatial databases. A prototype 2D and 3D hybrid system that seamlessly integrates 2D GIS (developed with ArcEngine) and 3D rendering engine (developed with DirectX) is then developed based on the framework. In this hybrid system, 2D and 3D data are viewed within the same scene. Multiple 2D GIS layers are overlaid on the base terrain using a Level of Detail (LOD) model. Advanced query functions, data accessing, data management and spatial analysis, which are executed in the traditional 2D GIS, are provided to users in a 3D environment by continuously transforming information between the 2D GIS subsystem and the 3D subsystem. The 3D data are organized and displayed by Keyhole Markup Language (KML) and textured 3D models in the COLLAborative Design Activity (COLLADA) format. The prototype demonstrates that this hybrid system has effectively addressed the three key issues identified above and that it can seamlessly integrate 2D GIS and 3D visualization. The hybrid system has great potential to be employed in many application domains, such as urban planning, landscape design and environmental decision making, among others, to enhance the 3D design capability and facilitate public participation in the planning, design and decision-making process.

DOI

[15]
Wang R, Qian X.OpenSceneGraph 3 Cookbook[M]. UK: Packt Publishing Ltd, 2012:21-48.

[16]
Döllner J, Baumman K, Hinrichs K.Texturing techniques for terrain visualization[C]. Proceedings of the conference on Visualization, 2000:227-234.

[17]
谈晓军,何忠焕.地图符号可视化系统的面向对象设计与实现[J].测绘通报,2003(1):11-13.介绍一个地理信息系统组件MapManager中符号系统的设计及实现.主要讨论4个方面的问题:地图符号分类及特征分析;符号对象及基本图形要素的类层次结构;符号库的持久存储结构设计;可视化设计环境的实现.最后对此符号制作系统的不足进行分析,提出解决的思路.

[18]
Kraak M J.Cartographic Principles[M]. London: Taylor and Francis, 2001:53-71.

[19]
Owens J D, Luebke D, Govindaraju N, et al.A Survey of general-purpose computation on graphics hardware[C]. Computer graphics forum, 2007,26(1):80-113.

文章导航

/