CN105701759B - 基于gpu的地图矢量线要素拐角合理性绘制方法 - Google Patents

基于gpu的地图矢量线要素拐角合理性绘制方法 Download PDF

Info

Publication number
CN105701759B
CN105701759B CN201610016109.3A CN201610016109A CN105701759B CN 105701759 B CN105701759 B CN 105701759B CN 201610016109 A CN201610016109 A CN 201610016109A CN 105701759 B CN105701759 B CN 105701759B
Authority
CN
China
Prior art keywords
row
values
line
color
structure table
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201610016109.3A
Other languages
English (en)
Other versions
CN105701759A (zh
Inventor
温永宁
乐松山
陈旻
闾国年
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nanjing Normal University
Original Assignee
Nanjing Normal University
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Nanjing Normal University filed Critical Nanjing Normal University
Priority to CN201610016109.3A priority Critical patent/CN105701759B/zh
Publication of CN105701759A publication Critical patent/CN105701759A/zh
Application granted granted Critical
Publication of CN105701759B publication Critical patent/CN105701759B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • G06T1/20Processor architectures; Processor configuration, e.g. pipelining
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/002D [Two Dimensional] image generation
    • G06T11/20Drawing from basic elements, e.g. lines or circles
    • G06T11/203Drawing of straight lines or curves
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/002D [Two Dimensional] image generation
    • G06T11/40Filling a planar surface by adding surface attributes, e.g. colour or texture

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Image Generation (AREA)

Abstract

本发明涉及GIS领域和数字地图制图领域的一种符号化渲染技术,给出了一种基于GPU的地图矢量线要素拐角合理性绘制方法,实现了基于该方法的线状矢量要素合理绘制。该方法包括以下步骤:首先根据需要填充的地图符号单元生成相应的颜色结构表,并在颜色结构表中制定特定的列作为背景列。接着根据线宽构造三角化后的线三角网,将沿线走向的U参数和垂直于线走向的V参数传递给三角网中的每个顶点,在对顶点赋U值时,如果拐角处的填充是背景列,则调整U值。最后将此结构颜色表和U‑V参数传递到着色器程序中,利用Shader语言,根据每个顶点上的U‑V值,基于颜色结构表进行线要素的逐像素绘制。

Description

基于GPU的地图矢量线要素拐角合理性绘制方法
技术领域
本发明涉及GIS领域和电子地图领域的一种符号化渲染技术,给出了一种基于GPU(Graphics Processing Unit)可编程流水线及Shader语言的地图线要素拐角合理性绘制方法。
背景技术
地理空间实体的符号化方法是地理信息领域和地图制图领域的重要研究内容。相比于常用的点符号和面符号,线符号由于其需要沿着线状要素的走向来填充绘制的特点,往往更加困难和耗时。除了常用的实线和虚线之外,地图表达中需要用的线型符号更为复杂。如城市主干道的线型符号是带有边框的双线图元;铁路符号是带有边框的黑白相间的图元;单边边界线符号是齿状的图元。这些线型符号利用不同几何形状组合而成一个带有语义信息的图元。传统的绘制方式是通过符号相关的特定函数,为每一个线型符号设计相应的绘制函数,这种方式应用场景固定,可扩展性不强。另一种常用的方式是利用组合绘制的方式来将地图符号分解,再根据分解出来的图元多次绘制矢量线;这种方式需要对原始的矢量线绘制多次,影响了其绘制效率。论文《面向GIS的矢量线状符号填充算法研究》(张海泉,潘懋,吴焕萍,等.《地理与地理信息科学》,2004,20(04):11-14.)介绍了这些基本方法。
由于地图符号的复杂性,也导致了在矢量线要素拐角处的绘制容易出现重绘、漏绘的问题,也就是拐角的不合理填充问题。这种不合理填充主要出现在用符号结构中不连续的部分绘制拐角,形成不一致的绘制;也出现在用符号结构中空白色来填充拐角,形成拐角的歧义,也就是说在拐角处既可以认为是连续的线,也可以认为是两条线。论文《基于GDI+的复杂线状符号优化算法》(秦佐,周晓光,刘军生,等.《测绘科学》,2011,04期(04):183-185.)在对线状符号的复杂性进行分析的基础上,总结了线状符号的基本组成结构以及在拐角处的绘制的转角问题。虽然该论文的方法提出了一种基于最小符号单元定位点的方案来解决拐角处的绘制问题,但其方法仍然是纯软件绘制的方法,对于线型符号的绘制需要多次重复的绘制才能表达符号的复杂结构;采用变换间隔距离的方式能够一定程度上避免在拐角处出现不合理的填充,但这种方式依赖于对矢量线要素的长度预先计算,且需不断调整间隔。在当前数据更新频率加快、数据获取精度不断提高、大数据的背景下,其绘制效率受到了极大的制约,也难以适应硬件加速绘制和GPU计算的技术趋势。名称为“基于GPU的地图线形符号绘制方法及系统”,申请号201310125110.6的中国专利,在分析地图线形符号绘制的难点的基础上,公开了一种在Shader程序里面定制线型地图符号的绘制方法。但这种方法严格依赖于Shader编程,不同的线型符号需要在Shader里面大量的编程才能实现绘制;对于如何将各种各样的复杂线型地图符号映射到GPU像素计算的方面并没有给出方法,对于如何处理拐角处的不合理绘制亦没有涉及。
因而,如何对矢量线要素的拐角进行合理性绘制是计算机地图绘制中的一个亟待解决的问题。这种拐角合理性绘制需要适应于多种线型地图符号,而且不能改变原始矢量线数据。
发明内容
本发明的目的是在GPU可编程流水线和着色器技术的基础上,针对矢量线要素在拐角处容易发生不合理绘制的问题,突破传统用多种不同的间隔模式来避免拐角处重绘漏绘的方式,实现基于符号结构的矢量线要素逐像素绘制,并在绘制过程中就进行拐角合理性处理。
本发明的技术方案是:
基于GPU的地图矢量线要素拐角合理性绘制方法,包括下列步骤:
步骤1确定需要沿线重复填充的符号单元的颜色结构表:将需要填充的符号单元按照纵向-横向的结构进行分解,用列优先的二维数组和相应的符号单元属性来结构化映射一个符号单元,对颜色结构表中的每一列指定其是否为背景列;
步骤2初始化需要绘制的线状要素的点集序列,根据线宽生成需要绘制的三角形几何三角网:确定需要绘制线要素的线宽参数,遍历线状要素中的每一个顶点,按照半个最大线宽向两边扩展,同时生成相应的三角形集合,并为每个三角形的每个顶点赋予沿线走向的长度值U值和垂直于线走向的长度值V值,即U-V值,将拐角处顶点的U值转换到符号结构中,判断其是否为背景列,如果是背景列,则调整U值到最接近的非背景列;
步骤3在着色器中根据颜色渐变函数对线状要素进行逐像素绘制:在着色器中基于传递到着色器里面的顶点U-V值,动态确定每个像素的U-V值,即像素在水平方向上到线起点的距离u'值和像素在垂直方向上到线的上边界的距离v'值,由此确定每一个像素在符号颜色结构表中属于哪一个颜色单元,利用颜色单元的颜色来填充当前像素。
所述步骤1中:A.符号单元的颜色结构表:将符号单元按照其结构分解为几个列,每一列都包含其相应的行,每一行都包含其相应的四个角的颜色值,由此形成一系列的颜色单元来映射特定的符号;B.颜色结构表的单元属性:对于一个符号单元的颜色结构表,其每一列都包含相应的宽度属性和所包含的行数属性,每一行都包含相应的高度属性,每一列都包含一个布尔值来指明该列是否为背景列,整个颜色结构表包含总列数、总宽度和总高度属性。
所述步骤2中拐角处U-V值的调整:在线串的拐角处,拐角内外存在沿线走向上的长度不一致,分别用拐角外的长度对拐角外顶点的U赋值,将拐角外顶点的U值赋给内拐角对应的顶点;对拐角顶点的U值,利用公式U(p)=u'–SL*[u'/SL]计算其在符号颜色结构表中的U(p)值,其中u'为原始计算得到的U值,SL表达整个符号的宽度,[u'/SL]表示对u'/SL的结果进行取整得到小于u'值的SL的整数倍;根据U(p)值遍历符号颜色结构表中的各列,判断其处于具体哪一列,得到所在列的索引值,利用这个列的索引值获取该列是否为背景列;如果该列是背景列,则判断U(p)值占据这一列的左半部分还是右半部分,如果是左半部分,则调整u'值到该列索引值-1这一列,反之在右半部分,调整u'值到该列索引值+1这一列。
本发明的方法可以利用GPU可编程流水线和着色器中像素着色器能够遍历每一个像素的特点,按照符号自身的结构信息,将符号映射为二维的颜色结构表;根据确定的符号结构中不能被填充在拐角处的信息,动态调整拐角处顶点的U值;在着色器中用依据调整过后的U值和V值进行颜色表取值,最终实现矢量线要素在拐角处的合理绘制。相比现有传统的绘制方法,本发明可以对矢量线要素拐角进行合理绘制,能够避免拐角处重绘漏绘,并平滑地表达矢量线的拐角,增强地图的绘制效果和可读性。
附图说明
图1是本发明方法的流程示意图;
图2是符号颜色结构表信息组织;
图3是矢量线要素在拐角处的三角化方法说明;
图4是(a)黑白间断线型符号在拐角处的合理性绘制方法说明,(b)将黑色延伸到拐角处,白色往右侧归并,(c)将黑色从拐角处开始,白色往左侧归并;
图5是边界线符号在拐角处的合理性绘制方法说明;
图6是利用本发明的方法绘制拐角的结果与其他现有方法的对比图,(a)采用GDI+方法,(b)采用AGG方法,(c)采用Cairo方法,(d)本发明方法处理的斜接拐角,(e)本发明方法处理的圆形拐角,(f)本发明方法处理的平截拐角,(g)本发明方法处理的不连接拐角。
具体实施方式
下面结合附图和实施例做进一步说明。
图1为本发明方法的流程图。该方法包括以下步骤:首先根据需要填充的地图符号单元生成相应的颜色结构表,并在颜色结构表中制定特定的列作为背景列。接着根据线宽构造三角化后的线三角网,将沿线走向的U参数和垂直于线走向的V参数传递给三角网中的每个顶点,在对顶点赋U值时,如果拐角处的填充是背景列,则调整U值。最后将此结构颜色表和U-V参数传递到着色器程序中,利用Shader语言,根据每个顶点上的U-V值,基于颜色结构表进行线要素的逐像素绘制。
一个符号的颜色结构表信息如图2所示,按照整个符号的宽度SymbolLength,整个符号有多少列ColumnCount,每一列有多少行ColumnRowCountArray,每一列的宽度ColumnWidthArray,每一行的高度RowHeightArray和每一个Cell的颜色CellColorTable来组织。基于这个符号颜色结构表,可以在Shader中根据每一个像素的U-V值,从颜色表中取值来进行矢量线要素的填充。
对拐角处的三角化需要根据不同的拐角类型来处理,如图3所示,几种不同类型的拐角分别三角化。对拐角的每个顶点跟其他顶点一样,也需要赋予U-V值。其U值基于拐角处在线上对应的点到起始点的距离,而这个U值存在很大的可能性会导致在拐角处填充不合理的颜色值。如图4所示的黑白间断线,拐角处不应该填充白色,以免引起地图读者认为是两条线;如图5所示的边界线,拐角处不应该填充间断边线,以免引起拐角处的歧义绘制。所以这个原始U值需要映射到一个符号中,并判断其是否属于符号颜色结构表中的背景列。如果是背景列,则往两侧作动态调整。如图4和图5所示。
本发明技术方案的具体说明如下:
A.首先遍历线要素中的每一个顶点,按照半个最大线宽向两边扩展,由此可以将一个线段扩展成一个矩形;利用矩形的四个顶点,组合生成相应的两个三角形;由一系列连续的线段可以生成连续的三角形集合。对于沿着线走向,往左边扩展出来的顶点,设定其V值为0;而往右边扩展出来的顶点,设定其V值为1。左右两边的扩展顶点的U值计算,是根据扩展顶点对应的线上的点与线的起始点计算长度,用长度除以最大线宽得到左右扩展顶点的U值。
B.对于需要沿线重复填充的符号单元,该符号首先从横向上被分为宽度一致的几列,对每一列再分为颜色一致的几行。不同列的宽度可以不同,但每一列中的每一行宽度相同;列中的不同行的颜色可以不同,但一行只能有一个颜色。由这些列-行(Column-Row)构成了一系列的单元(Cell)。每个Column被赋予宽度属性和行数属性,每个Row被赋予高度属性,每个Cell被赋予颜色值,整个符号颜色结构表被赋予总列数、总宽度和总高度属性。
C.通过GPU可编程流水线,将构造好的线三角网Mesh、需要绘制的符号颜色结构信息传递到Shader程序中。
D.对拐角处的顶点,调整其U值。利用公式U(p)=u'–SL*[u'/SL]计算拐角处顶点在符号颜色结构表中的U(p)值,其中u'表示原始计算得到的U值,SL表达整个符号的宽度,[u'/SL]表示对u'/SL的结果进行取整得到小于u'的SL的整数倍;根据U(p)遍历符号颜色结构表中的各列,判断其处于具体哪一列col_index,利用col_index获取该列是否为背景列;如果col_index列是背景列,则判断U(p)值占据这一列的左半部分还是右半部分,如果是左半部分,则调整u'值到col_index-1这一列,反之在右半部分,调整u'值到col_index+1这一列。
E.在所设计的Shader程序中,根据三角网Mesh顶点上的U-V值,可以利用GPU内置的光栅化方法得到每个像素的u'值(即该像素在水平方向上到线起点的距离)和v'值(即该像素在垂直方向上到线的上边界的距离)。利用这个u'值,首先去掉当前像素之前的所有符号,也就是将U值映射到单个符号的坐标系中;用公式U(p)=u'-SL×[u'/SL],可以得到当前像素距离符号最左侧的距离U(p);其中SL是符号的总宽度,[u'/SL]是对u'/SL的值进行取下整数。利用这个U(p)与v'值即可获得当前所处的Cell。
F.在GPU中用利用计算得到的Cell的颜色对矢量线要素进行逐像素填充,得到最后的绘制结果。
实施例:
相比于传统计算机可视化领域中的直线绘制,由于地图符号的复杂性,地图矢量线要素的绘制更为困难。传统的方法,用不同间隔参数的方式调整拐角处的绘制错误,难以满足地图绘制的要求,也造成了空间信息传递的丢失。所以本发明设计了一种基于GPUShader的地图线要素拐角合理性绘制方法,来适应于不同地图符号的正确绘制。如图6所示,利用本发明方法对四种典型的拐角绘制结果,以及同样的矢量线要素用其他方法绘制的错误结果。
下面是用软件方法,在C++语言和OpenGL环境下,实现基于GPU Shader的地图线要素拐角合理性绘制方法:
(1)定义结构体SymbolStructure表示符号结构:
(2)在Shader中定义一组变量用于传递符号颜色结构表信息:
#define MAX_COL_NUM 16//最多多少列
#define MAX_ROW_NUM 16//最多多少行
varying float vfU;//由顶点U值传递过来的u'值
varying float vfV;//由顶点V值传递过来的v'值
uniform int uiUseColNum;//一共有多少列
uniform float ufUseColWidth;//整个符号的宽度
uniform int uiUseRowNum[MAX_COL_NUM];//每一列有多少行
uniform float ufColWidth[MAX_COL_NUM];//每一列的宽度
uniform float ufRowHeight[MAX_COL_NUM*MAX_ROW_NUM];//每一行的高度
uniform vec4 uf4CellColor1[MAX_COL_NUM*MAX_ROW_NUM];//颜色表
uniform float aabuffer;//反走样阈值
(3)在构造线三角网过程中定义buildLineJoin函数,该函数主要实现构造线拐角:
(4)在Shader中定义函数getColByU和函数getRowByV获取当前所在Cell:
(5)在Shader中定义函数getCellColorByUV进行根据U-V取得到某一个Cell中颜色的计算:
在构造线三角形Mesh的过程中,调用拐角顶点U值调整的函数buildLineJoin。将拐角顶点的U值调整到填充非背景列。在确定像素颜色的Shader main函数中,首先调用getCellColorByUV函数,再依次调用getColByU和getRowByV获取当前像素位于哪个Cell,用Cell的颜色值赋予当前像素。

Claims (3)

1.基于GPU的地图矢量线要素拐角合理性绘制方法,其特征是,该方法包括下列步骤:
步骤1确定需要沿线重复填充的符号单元的颜色结构表:将需要填充的符号单元按照纵向-横向的结构进行分解,用列优先的二维数组和相应的符号单元属性来结构化映射一个符号单元,对颜色结构表中的每一列指定其是否为背景列;
步骤2初始化需要绘制的线要素的点集序列,根据线宽生成需要绘制的三角形几何三角网:确定需要绘制线要素的线宽参数,遍历线要素中的每一个顶点,按照半个最大线宽向两边扩展,同时生成相应的三角形集合,并为每个三角形的每个顶点赋予沿线走向的长度值U值和垂直于线走向的长度值V值,即U-V值,将拐角处顶点的U值转换到符号结构中,判断其是否为背景列,如果是背景列,则调整U值到最接近的非背景列;
步骤3在着色器中根据颜色渐变函数对线要素进行逐像素绘制:在着色器中基于传递到着色器里面的顶点U-V值,动态确定每个像素的U-V值,即像素在水平方向上到线起点的距离u'值和像素在垂直方向上到线的上边界的距离v'值,由此确定每一个像素在符号颜色结构表中属于哪一个颜色单元,利用颜色单元的颜色来填充当前像素。
2.根据权利要求1所述的基于GPU的地图矢量线要素拐角合理性绘制方法,其特征是,所述步骤1中:
A.符号单元的颜色结构表:将符号单元按照其结构分解为几个列,每一列都包含其相应的行,每一行都包含其相应的四个角的颜色值,由此形成一系列的颜色单元来映射特定的符号;
B.颜色结构表的单元属性:对于一个符号单元的颜色结构表,其每一列都包含相应的宽度属性和所包含的行数属性,每一行都包含相应的高度属性,每一列都包含一个布尔值来指明该列是否为背景列,整个颜色结构表包含总列数、总宽度和总高度属性。
3.根据权利要求1所述的基于GPU的地图矢量线要素拐角合理性绘制方法,其特征是,所述步骤2中拐角处U-V值的调整:在线串的拐角处,拐角内外存在沿线走向上的长度不一致,分别用拐角外的长度对拐角外顶点的U赋值,将拐角外顶点的U值赋给内拐角对应的顶点;对拐角顶点的U值,利用公式U(p)=u'–SL*[u'/SL]计算其在符号颜色结构表中的U(p)值,其中u'为原始计算得到的U值,SL表达整个符号的宽度,[u'/SL]表示对u'/SL的结果进行取整得到小于u'值的SL的整数倍;根据U(p)值遍历符号颜色结构表中的各列,判断其处于具体哪一列,得到所在列的索引值,利用这个列的索引值获取该列是否为背景列;如果该列是背景列,则判断U(p)值占据这一列的左半部分还是右半部分,如果是左半部分,则调整u'值到该列索引值-1这一列,即到最接近的非背景列;反之在右半部分,调整u'值到该列索引值+1这一列,即到最接近的非背景列。
CN201610016109.3A 2016-01-11 2016-01-11 基于gpu的地图矢量线要素拐角合理性绘制方法 Active CN105701759B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201610016109.3A CN105701759B (zh) 2016-01-11 2016-01-11 基于gpu的地图矢量线要素拐角合理性绘制方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610016109.3A CN105701759B (zh) 2016-01-11 2016-01-11 基于gpu的地图矢量线要素拐角合理性绘制方法

Publications (2)

Publication Number Publication Date
CN105701759A CN105701759A (zh) 2016-06-22
CN105701759B true CN105701759B (zh) 2018-08-10

Family

ID=56227115

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610016109.3A Active CN105701759B (zh) 2016-01-11 2016-01-11 基于gpu的地图矢量线要素拐角合理性绘制方法

Country Status (1)

Country Link
CN (1) CN105701759B (zh)

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108460143A (zh) * 2018-03-14 2018-08-28 国家测绘地理信息局第三地理信息制图院(四川省第二测绘地理信息工程院) 一种地图境界自动跳绘的方法
CN109741421B (zh) * 2019-01-23 2023-04-14 东北大学 一种基于gpu的动态图着色方法
CN111489411B (zh) * 2019-01-29 2023-06-20 北京百度网讯科技有限公司 线条绘制方法、装置、图像处理器、显卡及车辆
CN111145298B (zh) * 2019-12-26 2023-04-21 南京师范大学 顾及线宽一致性的矢量地图栅栏虚线符号绘制方法
CN111127589B (zh) * 2019-12-26 2023-04-21 南京师范大学 顾及线宽一致性的矢量地图圆形虚线符号绘制方法
CN111028353B (zh) * 2019-12-26 2023-04-21 南京师范大学 顾及线宽一致性的矢量地图线符号燕尾形箭头绘制方法
CN111145297B (zh) * 2019-12-26 2023-04-21 南京师范大学 顾及线宽一致性的矢量地图线符号钻石形箭头绘制方法
CN111145302B (zh) * 2019-12-26 2023-08-22 南京师范大学 顾及线宽一致性的矢量地图方形虚线符号绘制方法
CN111145296B (zh) * 2019-12-26 2023-05-09 南京师范大学 顾及线宽一致性的矢量地图线符号圆形箭头绘制方法
CN111145301B (zh) * 2019-12-26 2023-08-22 南京师范大学 顾及线宽一致性的矢量地图实线符号端头绘制方法
CN111145300B (zh) * 2019-12-26 2023-07-07 南京师范大学 顾及线宽一致性的矢量地图尖角形虚线符号绘制方法
CN111145299B (zh) * 2019-12-26 2023-08-22 南京师范大学 顾及线宽一致性的矢量地图实线符号拐角绘制方法
CN111127297B (zh) * 2019-12-26 2023-08-22 南京师范大学 顾及线宽一致性的矢量地图实线符号绘制方法

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102509325A (zh) * 2011-11-07 2012-06-20 哈尔滨工程大学 一种针对复杂线状符号图案单元的绘制方法

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102509325A (zh) * 2011-11-07 2012-06-20 哈尔滨工程大学 一种针对复杂线状符号图案单元的绘制方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
A function-based linear map symbol building and rendering method using shader language;Songshan Yue 等;《International Journal of Geographical Information Science》;20150820;第30卷(第2期);全文 *
复杂线状符号的设计及优化算法研究;吴小芳 等;《武汉大学学报信息科学版》;20060731;第31卷(第7期);全文 *

Also Published As

Publication number Publication date
CN105701759A (zh) 2016-06-22

Similar Documents

Publication Publication Date Title
CN105701759B (zh) 基于gpu的地图矢量线要素拐角合理性绘制方法
CN105513110A (zh) 基于gpu的宽度渐变线型地图符号绘制方法
CN105701855B (zh) 基于符号结构的线型地图符号反走样绘制方法
CN105096385B (zh) 一种二维地震剖面三维显示方法
CN105719230A (zh) 基于gpu的颜色渐变线型地图符号绘制方法
CN105336003B (zh) 结合gpu技术实时流畅绘制出三维地形模型的方法
US9672656B1 (en) Variable level-of-detail map rendering
CN107564087B (zh) 一种基于屏幕的三维线状符号渲染方法
CN101751682B (zh) 一种通用地图的制备方法
WO2006080115A1 (ja) 描画方法、画像生成装置、および電子情報機器
KR20140073480A (ko) 라인을 따른 텍스트 이미지 렌더링
CN108122196B (zh) 图片的纹理贴图方法和装置
CN1828671A (zh) 基于图像的服装虚拟展示系统中的网格纹理映射方法
US20160307294A1 (en) Systems and Methods for Displaying Patterns of Recurring Graphics on Digital Maps
US10573013B2 (en) System and method for rendering smooth color gradients across multiple shapes
CN102999931A (zh) 电子笔迹绘制方法及装置
WO2012097175A1 (en) Direct rendering of cad models on the gpu
CN106408627B (zh) 一种线状符号绘制方法
DE112011105126T5 (de) Texturkartierungsvorrichtung
CN113066176B (zh) 一种地图数据处理方法、装置、设备及存储介质
DE69404151T2 (de) Objektorientiertes graphisches abtastverfahren und -system
CN111127589B (zh) 顾及线宽一致性的矢量地图圆形虚线符号绘制方法
CN111145298B (zh) 顾及线宽一致性的矢量地图栅栏虚线符号绘制方法
CN109087391A (zh) 一种三维场景下的军标标绘方法
CN111145301A (zh) 顾及线宽一致性的矢量地图实线符号端头绘制方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant