一种基于屏幕的三维地图线状符号渲染方法  被引量:4

A Screen-based Method for Rendering 3D Linear Map Symbol

在线阅读下载全文

作  者:刘君妍 陈雅茜 高亦远 李创 佘江峰 LIU Junyan;CHEN Yaqian;GAO Yiyuan;LI Chuang;SHE Jiangfeng(School of Geography and Ocean Science,Jiangsu Provincial Key Laboratory of Geographic Information Science and Technology,Nanjing University,Nanjing 210023,China)

机构地区:[1]南京大学地理与海洋科学学院江苏省地理信息技术重点实验室,南京210023

出  处:《地球信息科学学报》2018年第8期1047-1054,共8页Journal of Geo-information Science

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

摘  要:作为地理信息系统中的重要组成部分,矢量数据在三维GIS中发挥着重要作用,如指示地理对象、解释空间关系和丰富图面信息等。随着图形硬件的迅速发展和虚拟地理环境的广泛应用,为了在三维地图中精确、高效地绘制出具有复杂样式的线性地图符号,本文提出了一种利用Open GL Shader Language的三维地形表面线状符号渲染方法。该方法通过对矢量数据进行编码形成纹理数据,完成矢量数据在程序与GPU间的传输;将地形单元和矢量线段间的映射关系存储在索引纹理中,用于关联线段的实时查找;通过计算当前屏幕片元与关联矢量线段的空间位置关系,判断片元所属符号的区域,进而设置片元的颜色。实验表明,本方法可在三维地形上高质量地渲染出几种典型的复杂线状符号,并能保持较好的渲染性能。Vector data, as an important part of Geographic Information System(GIS), plays a significant role in three-dimensional(3D) GIS to indicate geographic objects, explain spatial relationships and enrich map information. However, in the study of 2 D vector rendering onto 3D terrain surface, vector lines drawn by traditional algorithms are relatively simple and monotonous, mainly shown as monochromatic lines or multicolor parallel lines, which cannot meet the growing demands for visualization. With the rapid development of graphics hardware acceleration and the widespread application of Virtual Geographical Environment(VGE), in order to draw the complicated linear map symbol in 3D map effectively and efficiently, this paper proposes a screenbased method that renders the linear symbol onto the 3D terrain surface with the use of Open GL Shader Language(GLSL). We transfer the vector data from the procedure to Graphics Processing Unit(GPU) by encoding the vector data into the texture data. The mapping relationships between terrain units and vector lines are stored in the index texture, and the mapping is used for looking up the related line segments in real-time. In addition, the node texture stores the attribute of vector lines. We calculate the position relationship between screen fragments and related line segments, and find out the area where the current fragment belongs to. If the current screen fragment has associated line segments, then we get the attributes of the related line segments from the node texture and set the fragment color. It is worth mentioning that we provide a variety of symbolic functions, which can render different types of vector line segments, including gradient lines, periodic lines, etc.In order to achieve better visual effects, we apply a series of detail optimization operations to related line segments, including anti-aliasing and corner optimization. Finally, we take the Purple Mountain as an example and render vector lines onto it using the proposed method. The experime

关 键 词:地形渲染 线状地图符号 样式 着色器语言 虚拟地理环境 

分 类 号:P208[天文地球—地图制图学与地理信息工程] TP391.41[天文地球—测绘科学与技术]

 

参考文献:

正在载入数据...

 

二级参考文献:

正在载入数据...

 

耦合文献:

正在载入数据...

 

引证文献:

正在载入数据...

 

二级引证文献:

正在载入数据...

 

同被引文献:

正在载入数据...

 

相关期刊文献:

正在载入数据...

相关的主题
相关的作者对象
相关的机构对象