CN101976448A - 绘图方法及装置 - Google Patents
绘图方法及装置 Download PDFInfo
- Publication number
- CN101976448A CN101976448A CN 201010516133 CN201010516133A CN101976448A CN 101976448 A CN101976448 A CN 101976448A CN 201010516133 CN201010516133 CN 201010516133 CN 201010516133 A CN201010516133 A CN 201010516133A CN 101976448 A CN101976448 A CN 101976448A
- Authority
- CN
- China
- Prior art keywords
- screen pixels
- point
- pixels point
- screen
- points
- 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.)
- Granted
Links
Images
Landscapes
- Image Processing (AREA)
Abstract
本发明实施例公开了一种绘图方法及装置,涉及绘图领域,能够在缩短绘图时间的同时保证绘图的准确性。本发明方法包括:将需要绘制的图形所包含的所有原始数据点转换为对应的屏幕像素点;从各个屏幕像素列或屏幕像素行中选取四个屏幕像素点,四个屏幕像素点分别为坐标转换前原始数据点中横坐标最小的原始数据点对应的第一屏幕像素点、横坐标最大的原始数据点对应的第二屏幕像素点、纵坐标最小的原始数据点对应的第三屏幕像素点以及纵坐标最大的原始数据点对应的第四屏幕像素点,按照预定的顺序依次连接选取的屏幕像素点,再通过预设的点连接相邻的屏幕像素行或列,得到需要绘制的图形。本发明实施例在保证绘图准确性的前提下提高绘图效率。
Description
技术领域
本发明涉及绘图领域,尤其涉及一种绘图方法及装置。
背景技术
点连线绘图是将相邻(绝对距离最近)的两个点依次连接,绘制出预定图形的绘图方法;目前在计算机中实现绘图方法为:先将所有需要连接的点转换为屏幕上的像素点,再利用计算机提供的在两点之间画线的函数依次连接相邻的两个点,得到预定图形。但是当需要连接的点非常多,例如绘制包含1000万个点的图形时,在CPU为2GHz的计算机上,利用计算机提供的在两点之间画线的函数将1000万个点连接完,所要耗费的总时间为60秒左右,并且随着绘图点数的增加,绘图时间也相应成比例的增加,使得绘图的时间将更长,降低了用户绘图的体验。
为降低绘图的时间,提高用户体验,目前还有另一种方法实现点连线绘图,包括:从所要绘制的点中以每N个点为单位选取一个点,将选取的点转换为绘图区域对应的屏幕像素点;依次连接选取的相邻屏幕像素点。
上述点连线的方法,由于对一部分点进行了过滤,减少了两点连线的点数,从而在一定程度上缩短了绘图时间;但是,当所要绘制图形的点数比较少,而且选取的N的取值不当时,往往绘制出的图形的准确性得不到保障。
发明内容
本发明的实施例提供一种绘图方法及装置,能够在缩短绘图时间的同时保证绘图的准确性。
为达到上述目的,本发明的实施例采用如下技术方案:
一方面,本发明实施例提供一种绘图方法,包括:
将需要绘制的图形所包含的所有原始数据点转换为对应的屏幕像素点,各个屏幕像素点对应各自的屏幕像素列和屏幕像素行;
从各个屏幕像素列中选取四个屏幕像素点,所述四个屏幕像素点分别为坐标转换前所述原始数据点中横坐标最小的原始数据点对应的第一屏幕像素点、横坐标最大的原始数据点对应的第二屏幕像素点、纵坐标最小的原始数据点对应的第三屏幕像素点以及纵坐标最大的原始数据点对应的第四屏幕像素点;
按照第一个点为所述第一屏幕像素点,最后一个点为所述第二屏幕像素点的预定顺序,依次连接所述各个屏幕像素列中的所述四个屏幕像素点;
将相邻列的屏幕像素点按照屏幕像素点中横坐标小的一列的第二屏幕像素点与屏幕像素点中横坐标大的一列的第一屏幕像素点相连的方式依次连接,得到所述需要绘制的图形。
另一方面,本发明实施例还提供一种绘图装置,包括:
第一转换单元,用于将需要绘制的图形所包含的所有原始数据点转换为对应的屏幕像素点,各个屏幕像素点对应各自的屏幕像素列和屏幕像素行;
第一选取单元,用于从各个屏幕像素列中选取所述第一转换单元转换得到的四个屏幕像素点,所述四个屏幕像素点分别为坐标转换前所述原始数据点中横坐标最小的原始数据点对应的第一屏幕像素点、横坐标最大的原始数据点对应的第二屏幕像素点、纵坐标最小的原始数据点对应的第三屏幕像素点以及纵坐标最大的原始数据点对应的第四屏幕像素点;
第一绘图单元,用于按照第一个点为所述第一屏幕像素点,最后一个点为所述第二屏幕像素点的预定顺序,依次连接所述各个屏幕像素列中的所述四个屏幕像素点;
第二绘图单元,用于将相邻列的屏幕像素点按照屏幕像素点中横坐标小的一列的第二屏幕像素点与屏幕像素点中横坐标大的一列的第一屏幕像素点相连的方式依次连接,得到所述需要绘制的图形。
一方面,本发明实施例提供一种绘图方法,包括:
将需要绘制的图形所包含的所有原始数据点转换为对应的屏幕像素点,各个屏幕像素点对应各自的屏幕像素列和屏幕像素行;
从各个屏幕像素行中选取四个屏幕像素点,所述四个屏幕像素点分别为坐标转换前所述原始数据点中横坐标最小的原始数据点对应的第一屏幕像素点、横坐标最大的原始数据点对应的第二屏幕像素点、纵坐标最小的原始数据点对应的第三屏幕像素点以及纵坐标最大的原始数据点对应的第四屏幕像素点;
按照第一个点为所述第三屏幕像素点,最后一个点为所述第四屏幕像素点的预定顺序,依次连接所述各个屏幕像素行中的所述四个屏幕像素点;
将相邻行的屏幕像素点按照屏幕像素点中纵坐标小的一行的第四屏幕像素点与屏幕像素点中纵坐标大的一行的第三屏幕像素点相连的方式依次连接,得到所述需要绘制的图形。
另一方面,本发明实施例还提供一种绘图装置,包括:
第二转换单元,用于将需要绘制的图形所包含的所有原始数据点转换为对应的屏幕像素点,各个屏幕像素点对应各自的屏幕像素列和屏幕像素行;
第二选取单元,用于从各个屏幕像素行中选取所述第二转换单元转换得到的四个屏幕像素点,所述四个屏幕像素点分别为坐标转换前所述原始数据点中横坐标最小的原始数据点对应的第一屏幕像素点、横坐标最大的原始数据点对应的第二屏幕像素点、纵坐标最小的原始数据点对应的第三屏幕像素点以及纵坐标最大的原始数据点对应的第四屏幕像素点;
第三绘图单元,用于按照第一个点为所述第三屏幕像素点,最后一个点为所述第四屏幕像素点的预定顺序,依次连接所述各个屏幕像素行中的所述四个屏幕像素点;
第四绘图单元,用于将相邻行的屏幕像素点按照屏幕像素点中纵坐标小的一行的第四屏幕像素点与屏幕像素点中纵坐标大的一行的第三屏幕像素点相连的方式依次连接,得到所述需要绘制的图形。
本发明实施例提供的技术方案,将需要绘制的图形所包含的所有原始数据点转换为对应的屏幕像素点,各个屏幕像素点对应各自的屏幕像素列和屏幕像素行,并从各个屏幕像素列或各个像素行中选取四个屏幕像素点,并按照预定的顺序将所述选取的像素点依次连接,与将所有的组成图形的屏幕像素点相连相比,本发明实施例每列或每行中最多仅连接四个屏幕像素点,较大数量的减少了连接点的数量,从而缩短了绘图时间。
并且,由于计算机屏幕的最小单位屏幕像素是离散的,对于一列中的所有屏幕像素点其横坐标是相同的,将同一列中的所有屏幕像素点按照相邻的屏幕像素点依次相连的方式连接得到一条直线,因此将一列中的所有屏幕像素点中的纵坐标最小的像素点和纵坐标最大的像素点相连,同样可得到上述的一条直线;而相邻列中的屏幕像素点的连接,是按照屏幕像素点中横坐标小的一列的横坐标最大的原始数据点对应的屏幕像素点与屏幕像素点中横坐标大的一列的横坐标最小的原始数据点对应的屏幕像素点相连实现;而本发明实施例中从每列中选取的四个屏幕像素点中包含横坐标最小的原始数据点对应的屏幕像素点、横坐标最大的原始数据点对应的屏幕像素点、纵坐标最小的原始数据点对应的屏幕像素点以及纵坐标最大的原始数据点对应的屏幕像素点,并按照一定的顺序将所述四个屏幕像素点连接,并将相邻列的屏幕像素点按照上述的连接方式相连,因此能够保证绘制图形的准确性。同理,按照屏幕像素行绘图时,也能够保证绘制图形的准确性。
综上所述,本发明提供的技术方案能够在缩短绘图时间的同时保证绘图的准确性。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例1中一种绘图方法的流程图;
图2为本发明实施例1中另一种绘图方法的流程图;
图3为本发明实施例1中一种绘图装置的组成框图;
图4为本发明实施例1中另一种绘图装置的组成框图;
图5为本发明实施例1中另一种绘图装置的组成框图;
图6为本发明实施例2中一种绘图方法的流程图;
图7为本发明实施例2中另一种绘图方法的流程图;
图8为本发明实施例2中一种绘图装置的组成框图;
图9为本发明实施例2中另一种绘图装置的组成框图;
图10为本发明实施例2中另一种绘图装置的组成框图;
图11为本发明实施例中通过现有技术进行绘图的测试显示图;
图12为本发明实施例中通过本发明的技术方案进行绘图的测试显示图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
实施例1
本发明的一个实施例提供一种绘图方法,如图1所示,该方法包括:
101、将需要绘制的图形所包含的所有原始数据点转换为对应的屏幕像素点,各个屏幕像素点对应各自的屏幕像素列和屏幕像素行。
其中,所述将需要绘制的图形所包含的所有原始数据点转换为对应的屏幕像素点,可以采用现有技术中任一种方法,本发明实施例对此不进行限制;例如,将需要绘制的图形所包含的所有原始数据点转换为对应的屏幕像素点可以采用以下的方法,该方法包括:
从所述需要绘制的图形所包含的所有的原始数据点pointi(xi,yi)中获取纵坐标最小的原始数据点的纵坐标值ymin和纵坐标最大的原始数据点的纵坐标值ymax;其中,pointi(xi,yi)为所有原始数据点中第i个原始数据点的坐标,xi为该第i个原始数据点的横坐标,yi为该第i个原始数据点的纵坐标,并且各原始数据点的横坐标值满足如下关系,该关系为:x1≤x2≤x3≤Λ≤xi≤Λ≤xn-1≤xn,其中n为需要绘制的图形所包含的所有原始数据点的数量。
根据获取的ymin和ymax将该需要绘制的图形所包含的所有原始数据点转换为对应的M*N屏幕上的屏幕像素点POINTi(Xi,Yi);其中,POINTi(Xi,Yi)为坐标转换后的第i个屏幕像素点的屏幕坐标,Xi坐标转换后的第i个屏幕像素点的横坐标,Yi坐标转换后的第i个屏幕像素点的纵坐标,M为绘图区域屏幕像素列数,N为绘图区域屏幕像素行数。根据获取的ymin和ymax将该需要绘制的图形所包含的所有数据点转换为对应的M*N屏幕上的屏幕像素点POINTi(Xi,Yi)可以采用如下公式1实现,该公式1为:
其中,[]为取整符号,i=1,2,3,Λ,n-1,n;n为所有数据点的数量,并且各数据点的横坐标值满足如下关系,该关系为:x1≤x2≤x3≤Λ≤xi≤Λ≤xn-1≤xn,其中x1为xmin,xn为xmax。
102、从各个屏幕像素列中选取四个屏幕像素点,所述四个屏幕像素点分别为坐标转换前所述原始数据点中横坐标最小的原始数据点对应的第一屏幕像素点、横坐标最大的原始数据点对应的第二屏幕像素点、纵坐标最小的原始数据点对应的第三屏幕像素点以及纵坐标最大的原始数据点对应的第四屏幕像素点。
需要说明的是,在将原始数据点转换为屏幕像素点后,各个屏幕像素点的横坐标为整数,并且满足如下关系,该关系为:0≤X1≤X2≤X3≤L≤Xi≤L≤Xn-1≤Xn≤M-1;并且屏幕像素点中横坐标等于I(0≤I≤M-1)的屏幕像素点均匀分布在M*N的屏幕的第I列中。
其中,在将原始数据点转换为屏幕像素点时,会建立原始数据点和屏幕像素点的一一对应关系表,并将该对应关系表保存,当需要查找特定的屏幕像素点时,由于一列中的屏幕像素点的横坐标都是相等的,不能精确的查找不同的屏幕像素点,因此在选取特定的屏幕像素点时,可以先根据原始数据点的坐标选取特定的原始数据点,再根据该对应关系表获取与所述选取的原始数据点对应的屏幕像素点。本发明实施例中,在选取四个屏幕像素点时,可以先从各个屏幕像素列中选取坐标转换前所述原始数据点中横坐标最小的第一原始数据点、横坐标最大的第二原始数据点、纵坐标最小的第三原始数据点以及纵坐标最大的第四原始数据点;并查询所述对应关系表,获取与所述第一原始数据点、第二原始数据点、第三原始数据点以及第四原始数据点相对应的第一屏幕像素点、第二屏幕像素点、第三屏幕像素点以及第四屏幕像素点。
103、按照第一个点为所述第一屏幕像素点,最后一个点为所述第二屏幕像素点的预定顺序,依次连接所述各个屏幕像素列中的所述四个屏幕像素点。
其中,所述按照第一个点为所述第一屏幕像素点,最后一个点为所述第二屏幕像素点的预定顺序,依次连接所述各个屏幕像素列中的所述四个屏幕像素点时,对于第三屏幕像素点和第四屏幕像素点的顺序不进行限制,具体可以采用以下方式连接所述各个屏幕像素列中的所述四个屏幕像素点,包括:
第一种方式,按照第一屏幕像素点、第三屏幕像素点、第四屏幕像素点以及第二屏幕像素点的次序,依次连接所述选取的每列的四个预定屏幕像素点;即按照坐标转换前所述原始数据点中横坐标最小的原始数据点对应的屏幕像素点、纵坐标最小的原始数据点对应的屏幕像素点、纵坐标最大的原始数据点对应的屏幕像素点以及横坐标最大的原始数据点对应的屏幕像素点次序,依次连接所述各个屏幕像素列中的所述四个屏幕像素点。
第二种方式,按照第一屏幕像素点、第四屏幕像素点、第三屏幕像素点以及第二屏幕像素点的次序,依次连接所述选取的每列的四个预定屏幕像素点;即按照坐标转换前所述原始数据点中横坐标最小的原始数据点对应的屏幕像素点、纵坐标最大的原始数据点对应的屏幕像素点、纵坐标最小的原始数据点对应的屏幕像素点以及横坐标最大的原始数据点对应的屏幕像素点次序,依次连接所述选取的各个屏幕像素列中所述四个屏幕像素点。
这里需要说明的是,在按照上述两个方式依次连接各个屏幕像素列时,所有的屏幕像素列中的所述四个屏幕像素点的连接并不局限于使用上述两种方式中的一种,各个屏幕像素列可以采用上述两种方式中的任一种连接方式,在具体实施时,本发明实施例对此不进行限制。
104、将相邻列的屏幕像素点按照屏幕像素点中横坐标小的一列的第二屏幕像素点与屏幕像素点中横坐标大的一列的第一屏幕像素点相连的方式依次连接,得到所述需要绘制的图形。
例如,当将屏幕像素点分为M列(从0列到(M-1)列)时,第I列的所述四个屏幕像素点分别表示为第一屏幕像素点POINTI·xmin、第二屏幕像素点POINTI·xmax、第三屏幕像素点POINTI·ymin以及第四屏幕像素点POINTI·ymax,则在绘图时按照第0列到第(M-1)列依次连接各选取的屏幕像素点时。
若将所有的屏幕像素列中的所述四个屏幕像素点都按照步骤103中第一种连接方式时,可以按照以下顺序依次连接各选取屏幕像素点,该顺序如下:POINT0·xmin,POINT0·ymin,POINT0·ymax,POINT0·xmax,POINT1·xmin,POINT1·ymin,POINT1·ymax,POINT1·max,...,POINTI·xmin,POINTI·ymin,POINTI·ymax,POINTI·xmax,...,POINTM-1·xmin,POINTM-1·ymin,POINTM-1·ymax,POINTM-1·xmax。
若将所有的屏幕像素列中的所述四个屏幕像素点都按照步骤103中第二种连接方式时,可以按照以下顺序依次连接各选取的屏幕像素点,该顺序如下:POINT0·xmin,POINT0·ymax,POINT0·ymin,POINT0·xmax,POINT1·xmin,POINT1·ymax,POINT1·ymin,POINT1·xmax,...,POINTI·xmin,POINTI·ymax,POINTI·ymin,POINTI·xmax,...,POINTM-1·xmin,POINTM-1·ymax,POINTM-1·ymin,POINTM-1·xmax。
若将所有的屏幕像素列中的第一列中的所述四个屏幕像素点按照步骤103中的第二种连接方式,其他的屏幕像素列都按照步骤103中的第一种连接方式时,可以按照以下顺序依次连接各选取的屏幕像素点,该顺序如下:POINT0·xmin,POINT0·ymin,POINT0·ymax,POINT0·xmax,POINT1·xmin,POINT1·ymax,POINT1·ymin,POINT1·xmax,...,POINTI·xmin,POINTI·ymin,POINTI·ymax,POINTI·xmax,...,POINTM-1·xmin,POINTM-1·ymin,POINTM-1·ymax,POINTM-1·xmax。
本发明实施中,将需要绘制的图形所包含的所有原始数据点转换为对应的屏幕像素点,各个屏幕像素点对应各自的屏幕像素列和屏幕像素行,并从各个屏幕像素列中选取四个屏幕像素点,并按照预定的顺序将所述选取的屏幕像素点依次连接,与将所有的组成图形的屏幕像素点相连相比,本发明实施例每列中最多仅连接四个屏幕像素点,较大数量的减少了连接点的数量,从而缩短了绘图时间。
并且,由于计算机屏幕的最小单位屏幕像素是离散的,对于一列中的所有屏幕像素点其横坐标是相同的,将同一列中的所有屏幕像素点按照相邻的屏幕像素点依次相连的方式连接得到一条直线,因此将一列中的所有屏幕像素点中的纵坐标最小的像素点和纵坐标最大的像素点相连,同样可得到上述的一条直线;而相邻列中的屏幕像素点的连接,是按照屏幕像素点中横坐标小的一列的横坐标最大的原始数据点对应的屏幕像素点与屏幕像素点中横坐标大的一列的横坐标最小的原始数据点对应的屏幕像素点相连实现;而本发明实施例中从每列中选取的四个屏幕像素点中包含横坐标最小的原始数据点对应的屏幕像素点、横坐标最大的原始数据点对应的屏幕像素点、纵坐标最小的原始数据点对应的屏幕像素点以及纵坐标最大的原始数据点对应的屏幕像素点,并按照一定的顺序将所述四个屏幕像素点连接,并将相邻列的屏幕像素点按照上述的连接方式相连,因此能够保证绘制图形的准确性。
综上所述,本发明提供的技术方案能够在缩短绘图时间的同时保证绘图的准确性。
本发明的又一个实施例提供了一种绘图方法,如图2所示,该方法包括:
201、将需要绘制的图形所包含的所有原始数据点转换为对应的屏幕像素点,各个屏幕像素点对应各自的屏幕像素列和屏幕像素行。
其中,所述将需要绘制的图形所包含的所有原始数据点转换为对应的屏幕像素点的具体描述,可以参考图1的步骤101中的相应描述,本发明实施例将不再赘述。
202、从各个屏幕像素列中选取四个屏幕像素点,所述四个屏幕像素点分别为坐标转换前所述原始数据点中横坐标最小的原始数据点对应的第一屏幕像素点、横坐标最大的原始数据点对应的第二屏幕像素点、纵坐标最小的原始数据点对应的第三屏幕像素点以及纵坐标最大的原始数据点对应的第四屏幕像素点。
进一步可选的,为了进一步的过滤不必要的原始数据点,缩短绘图时间,在执行完步骤202之后,本发明实施例还可以执行步骤203,以及后续的步骤。
203、查找所述各个屏幕像素列中的所述四个屏幕像素点中是否存在相同的屏幕像素点;若屏幕像素列中的所述四个屏幕像素点中存在相同的屏幕像素点,则执行步骤204;若屏幕像素列中的所述四个屏幕像素点中不存在相同的屏幕像素点,则执行步骤207。
其中,查找各个屏幕像素列中选取的所述四个屏幕像素点中是否存在相同的屏幕像素点时,即查找上所述四个屏幕像素点中是否存在横坐标和纵坐标都相等的屏幕像素点。
204、保留所述相同屏幕像素点中的一个屏幕像素点,将其他所述相同屏幕像素点删除。
例如,分组后第2列中的四个屏幕坐标分别为:横坐标最小的原始数据点对应的第一屏幕像素点POINT2·xmin(2,4)、横坐标最大的原始数据点对应的第二屏幕像素点POINT2·xmax(2,6)、纵坐标最大的原始数据点对应的第三屏幕像素点POINT2·ymax(2,3)以及纵坐标最小的原始数据点对应的第四屏幕像素点POINT2·ymax(2,6);其中POINT2·xmax(2,6)和POINT2·ymax(2,6)为相同的屏幕坐标点,则可以将POINT2·xmax(2,6)删除,保留POINT2·xmax(2,6),也可以将POINT2·xmax(2,6)删除,保留POINT2·amax(2,6),本发明实施例对此不进行限定。
205、按照第一个点为所述第一屏幕像素点,最后一个点为所述第二屏幕像素点的预定顺序,依次连接各个屏幕像素列中删除相同屏幕像素点后的屏幕像素点。
其中,按照第一个点为所述第一屏幕像素点,最后一个点为所述第二屏幕像素点的预定顺序,依次连接各个屏幕像素列中删除相同屏幕像素点后的屏幕像素点的具体描述,可以参考图1中的步骤103中的相应描述,本发明实施例将不再赘述。
206、将相邻列的屏幕像素点按照屏幕像素点中横坐标小的一列的第二屏幕像素点与屏幕像素点中横坐标大的一列的第一屏幕像素点相连的方式依次连接,得到所述需要绘制的图形。
若在203中,查找结果为屏幕像素列中的四个屏幕像素点中不存在相同的屏幕像素点,则执行步骤207:
207、直接按照第一个点为所述第一屏幕像素点,最后一个点为所述第二屏幕像素点的预定顺序,依次连接所述各个屏幕像素列中的所述四个屏幕像素点。
其中,所述按照预定的顺序依次连接所述选取的每列中的四个屏幕像素点的具体描述,可以参考实图1中的步骤103中的相应描述,本发明实施例此处将不再赘述。
在执行了207完成各个屏幕像素列中点的连线之后再执行206,将相邻列的屏幕像素点按照屏幕像素点中横坐标小的一列的第二屏幕像素点与屏幕像素点中横坐标大的一列的第一屏幕像素点相连的方式依次连接,得到所述需要绘制的图形。
本发明实施中,能够在缩短绘图时间的同时保证绘图的准确性。更进一步的,本发明实施例在从各个屏幕像素列中选取四个屏幕像素点之后,查询各个屏幕像素列的所述四个屏幕像素点中是否存在相同的屏幕像素点,若存在相同的屏幕像素点时,则只保留所述相同的屏幕像素点中的一个屏幕像素点,将其他相同的屏幕像素点删除,并在删除了相应屏幕像素点的基础上实现点连线图形的绘制,进一步减少了点绘图的屏幕像素点,从而进一步缩短了图形的绘制时间;并且删除的屏幕像素点只是相同的屏幕像素点,并不影响绘图准确性。因此本发明实施例在保证点绘图准确性的同时进一步缩短了绘图时间,提高了用户体验。
本发明的再一个实施例提供了一种点连线的装置,如图3所示,该装置包括:第一转换单元31、第一选取单元32、第一绘图单元33和第二绘图单元34。
第一转换单元31,用于将需要绘制的图形所包含的所有原始数据点转换为对应的屏幕像素点,各个屏幕像素点对应各自的屏幕像素列和屏幕像素行;其中,所述转换单元31将需要绘制的图形所包含的所有原始数据点转换为对应的屏幕像素点,可以采用现有技术中任一种方法,本发明实施例对此不进行限制,具体的描述可以参考图1中的步骤101中的相应描述,本发明实施例此处将不再赘述。
第一选取单元32,用于从各个屏幕像素列中选取所述第一转换单元31换转得到的四个屏幕像素点,所述四个屏幕像素点分别为坐标转换前所述原始数据点中横坐标最小的原始数据点对应的第一屏幕像素点、横坐标最大的原始数据点对应的第二屏幕像素点、纵坐标最小的原始数据点对应的第三屏幕像素点以及纵坐标最大的原始数据点对应的第四屏幕像素点;其中,在第一转换单元31将原始数据点转换为屏幕像素点时,会建立原始数据点和屏幕像素点的一一对应关系表,并将该对应关系表保存,当需要查找特定的屏幕像素点时,由于一个屏幕像素列中的屏幕像素点的横坐标都是相等的,不能精确的查找不同的屏幕像素点,因此在选取特定的点屏幕像素点时,可以先根据原始数据点的坐标选取特定的原始数据点,再根据该保存的对应关系表获取与所述选取的原始数据点对应的屏幕像素点。具体的描述,可以参考图1中的步骤102中的相应描述,本发明实施例此处将不再赘述。
第一绘图单元33,用于按照第一个点为所述第一屏幕像素点,最后一个点为所述第二屏幕像素点的预定顺序,依次连接所述各个屏幕像素列中的所述四个屏幕像素点。
第二绘图单元34,用于将相邻列的屏幕像素点按照屏幕像素点中横坐标小的一列的第二屏幕像素点与屏幕像素点中横坐标大的一列的第一屏幕像素点相连的方式依次连接,得到所述需要绘制的图形。
进一步可选的,为了进一步的过滤不必要的屏幕像素点,缩短绘图时间,如图4所示,该绘图装置还包括:第一查找单元35和第一处理单元36。
第一查找单元35,用于在所述第一选取单元32从各个屏幕像素列中选取四个屏幕像素点之后,查找所述各个屏幕像素列中的所述四个屏幕像素点中是否存在相同的屏幕像素点。其中,所述查找单元35查找所述各个屏幕像素列中选取的所述四个屏幕像素点中是否存在相同的屏幕像素点时,即查找上所述四个屏幕像素点中是否存在横坐标和总坐标都相等的屏幕像素点。
第一处理单元36,用于在所述第一查找单元35查找到所述各个屏幕像素列中的所述四个屏幕像素点中存在相同的屏幕像素点时,保留所述相同屏幕像素点中的一个屏幕像素点,将其他所述相同屏幕像素点删除。
所述第一绘图单元33还用于,按照第一个点为所述第一屏幕像素点,最后一个点为所述第二屏幕像素点的预定顺序,依次连接各个屏幕像素列中删除相同屏幕像素点后的屏幕像素点。
进一步,如图5所示,所述第一绘图单元33包括:第一绘图模块331和/或第二绘图模块332。
所述第一绘图模块331,用于按照第一屏幕像素点、第三屏幕像素点、第四屏幕像素点以及第二屏幕像素点的次序,依次连接所述各个屏幕像素列中的所述四个屏幕像素点。
所述第二绘图模块332,用于按照第一屏幕像素点、第四屏幕像素点、第三屏幕像素点以及第二屏幕像素点的次序,依次连接所述各个屏幕像素列中的所述四个屏幕像素点。
这里需要说明的是,所述第一绘图模块331和第二绘图模块332可以单独存在,也可以结合存在,当结合存在时,提高了设备的兼容性,用户在具体使用时可以根据自己的需求选择具体启动哪个功能模块,本发明实施例不进行限制。
其中,这里需要说明的是,上述各功能单元以及功能模块的具体描述,可以参考图1至图2中的相应描述,本发明实施例将不再赘述。
本发明实施中,能够在缩短绘图时间的同时保证绘图的准确性。更进一步的,本发明实施例在从各个屏幕像素列中选取四个屏幕像素点之后,查询各个屏幕像素列的所述四个屏幕像素点中是否存在相同的屏幕像素点,若存在相同的屏幕像素点时,则只保留所述相同的屏幕像素点中的一个屏幕像素点,将其他相同的屏幕像素点删除,并在删除了相应屏幕像素点的基础上实现点连线图形的绘制,进一步减少了点绘图的屏幕像素点,从而进一步缩短了图形的绘制时间;并且删除的屏幕像素点只是相同的屏幕像素点,并不影响绘图准确性。因此本发明实施例在保证点绘图准确性的同时进一步缩短了绘图时间,提高了用户体验。
实施例2
本发明的一个实施例提供一种绘图方法,如图6所示,该方法包括:
401、将需要绘制的图形所包含的所有原始数据点转换为对应的屏幕像素点,各个屏幕像素点对应各自的屏幕像素列和屏幕像素行。
其中,所述将需要绘制的图形所包含的所有原始数据点转换为对应的屏幕像素点,可以参考图1中的步骤101中的相应描述,本发明实施例此处将不再赘述。
402、从各个屏幕像素行中选取四个屏幕像素点,所述四个屏幕像素点分别为坐标转换前所述原始数据点中横坐标最小的原始数据点对应的第一屏幕像素点、横坐标最大的原始数据点对应的第二屏幕像素点、纵坐标最小的原始数据点对应的第三屏幕像素点以及纵坐标最大的原始数据点对应的第四屏幕像素点。
其中,所述从各个屏幕像素行中选取四个屏幕像素点的具体描述,可以参考图1中的步骤102中的相应描述,不同之处在于,图1中的步骤102中是从各个屏幕像素列中选取所述四个屏幕像素点,本发明实施例是从各个屏幕像素行中选取所述四个屏幕像素点,但具体的操作是相同的,本发明实施例此处将不再赘述。
403、按照第一个点为所述第三屏幕像素点,最后一个点为所述第四屏幕像素点的预定顺序,依次连接所述各个屏幕像素行中的所述四个屏幕像素点。
其中,所述按照第一个点为所述第三屏幕像素点,最后一个点为所述第四屏幕像素点的预定顺序,依次连接所述各个屏幕像素行中的所述四个屏幕像素点时,对于第一屏幕像素点和第二屏幕像素点的顺序不进行限制,具体可以采用以下方式连接所述各个屏幕像素行中的所述四个屏幕像素点,包括:
第一种方式,按照第三屏幕像素点、第一屏幕像素点、第二屏幕像素点以及第四屏幕像素点的次序,依次连接所述各个屏幕像素行中的所述四个屏幕像素点;即按照坐标转换前所述原始数据点中纵坐标最小的原始数据点对应的屏幕像素点、横坐标最小的原始数据点对应的屏幕像素点、横坐标最大的原始数据点对应的屏幕像素点以及纵坐标最大的原始数据点对应的屏幕像素点次序,依次连接所述各个屏幕像素行中的所述四个屏幕像素点。
第二种方式,按照第三屏幕像素点、第二屏幕像素点、第一屏幕像素点以及第四屏幕像素点的次序,依次连接所述各个屏幕像素行中的所述四个屏幕像素点;即按照坐标转换前所述原始数据点中纵坐标最小的原始数据点对应的屏幕像素点、横坐标最大的原始数据点对应的屏幕像素点、横坐标最小的原始数据点对应的屏幕像素点以及纵坐标最大的原始数据点对应的屏幕像素点次序,依次连接所述选取的各个屏幕像素行中所述四个屏幕像素点。
这里需要说明的是,在按照上述两个方式依次连接各个屏幕像素行时,所有的屏幕像素行中的所述四个屏幕像素点的连接并不局限于使用上述两种方式中的一种,各个屏幕像素行可以采用上述两种方式中的任一种连接方式,在具体实施时,本发明实施例对此不进行限制。
404、将相邻行的屏幕像素点按照屏幕像素点中纵坐标小的一行的第四屏幕像素点与屏幕像素点中纵坐标大的一行的第三屏幕像素点相连的方式依次连接,得到所述需要绘制的图形。
本发明实施中,将需要绘制的图形所包含的所有原始数据点转换为对应的屏幕像素点,各个屏幕像素点对应各自的屏幕像素行和屏幕像素行,并从各个屏幕像素行中选取四个屏幕像素点,并按照预定的顺序将所述选取的屏幕像素点依次连接,与将所有的组成图形的屏幕像素点相连相比,本发明实施例每行中最多仅连接四个屏幕像素点,较大数量的减少了连接点的数量,从而缩短了绘图时间。
并且,由于计算机屏幕的最小单位屏幕像素是离散的,对于一行中的所有屏幕像素点其纵坐标是相同的,将同一行中的所有屏幕像素点按照相邻的屏幕像素点依次相连的方式连接得到一条直线,因此将一行中的所有屏幕像素点中的纵坐标最小的像素点和纵坐标最大的像素点相连,同样可得到上述的一条直线;而相邻行中的屏幕像素点的连接,是按照屏幕像素点中纵坐标小的一行的纵坐标最大的原始数据点对应的屏幕像素点与屏幕像素点中纵坐标大的一行的中坐标最小的原始数据点对应的屏幕像素点相连实现;而本发明实施例中从每行中选取的四个屏幕像素点中包含横坐标最小的原始数据点对应的屏幕像素点、横坐标最大的原始数据点对应的屏幕像素点、纵坐标最小的原始数据点对应的屏幕像素点以及纵坐标最大的原始数据点对应的屏幕像素点,并按照一定的顺序将所述四个屏幕像素点连接,并将相邻行的屏幕像素点按照上述的连接方式相连,因此能够保证绘制图形的准确性。
综上所述,本发明提供的技术方案能够在缩短绘图时间的同时保证绘图的准确性。
本发明的又一个实施例提供了一种绘图方法,如图7所示,该方法包括:
501、将需要绘制的图形所包含的所有原始数据点转换为对应的屏幕像素点,各个屏幕像素点对应各自的屏幕像素行和屏幕像素行。
其中,所述将需要绘制的图形所包含的所有原始数据点转换为对应的屏幕像素点的具体描述,可以参考图1的步骤101中的相应描述,本发明实施例将不再赘述。
502、从各个屏幕像素行中选取四个屏幕像素点,所述四个屏幕像素点分别为坐标转换前所述原始数据点中横坐标最小的原始数据点对应的第一屏幕像素点、横坐标最大的原始数据点对应的第二屏幕像素点、纵坐标最小的原始数据点对应的第三屏幕像素点以及纵坐标最大的原始数据点对应的第四屏幕像素点。
其中,所述从各个屏幕像素行中选取四个屏幕像素点的具体描述,可以参考图1中的步骤102中的相应描述,不同之处在于,图1中的步骤102中是从各个屏幕像素列中选取所述四个屏幕像素点,本发明实施例是从各个屏幕像素行中选取所述四个屏幕像素点,但具体的操作是相同的,本发明实施例此处将不再赘述。
进一步可选的,为了进一步的过滤不必要的原始数据点,缩短绘图时间,在执行完步骤502之后,本发明实施例还可以执行步骤503,以及后续的步骤。
503、查找所述各个屏幕像素行中的所述四个屏幕像素点中是否存在相同的屏幕像素点;若所述各个屏幕像素行中的所述四个屏幕像素点中存在相同的屏幕像素点,则执行步骤504;若所述各个屏幕像素行中的所述四个屏幕像素点中不存在相同的屏幕像素点,则执行步骤507。
其中,查找所述各个屏幕像素行中选取的所述四个屏幕像素点中是否存在相同的屏幕像素点时,即查找上所述四个屏幕像素点中是否存在横坐标和纵坐标都相等的屏幕像素点。
504、保留所述相同屏幕像素点中的一个屏幕像素点,将其他所述相同屏幕像素点删除。
505、按照第一个点为所述第三屏幕像素点,最后一个点为所述第四屏幕像素点的预定顺序,依次连接各个屏幕像素行中删除相同屏幕像素点后的屏幕像素点。
其中,按照第一个点为所述第三屏幕像素点,最后一个点为所述第四屏幕像素点的预定顺序,依次连接各个屏幕像素行中删除相同屏幕像素点后的屏幕像素点的具体描述,可以参考图6中的步骤403中的相应描述,本发明实施例将不再赘述。
506、将相邻行的屏幕像素点按照屏幕像素点中横坐标小的一行的第四屏幕像素点与屏幕像素点中横坐标大的一行的第三屏幕像素点相连的方式依次连接,得到所述需要绘制的图形。
若在503中,查找结果为屏幕像素列中的四个屏幕像素点中不存在相同的屏幕像素点,则执行步骤507:
507、直接按照第一个点为所述第三屏幕像素点,最后一个点为所述第四屏幕像素点的预定顺序,依次连接所述各个屏幕像素行中的所述四个屏幕像素点,并执行步骤506。
其中,所述按照预定的顺序依次连接所述选取的每行中的四个屏幕像素点的具体描述,可以参考实图6中的步骤403中的相应描述,本发明实施例此处将不再赘述。
在执行了507完成各个屏幕像素行中点的连线之后再执行506,将相邻行的屏幕像素点按照屏幕像素点中横坐标小的一行的第四屏幕像素点与屏幕像素点中横坐标大的一行的第三屏幕像素点相连的方式依次连接,得到所述需要绘制的图形。
本发明实施中,能够在缩短绘图时间的同时保证绘图的准确性。更进一步的,本发明实施例在从各个屏幕像素行中选取四个屏幕像素点之后,查询各个屏幕像素行的所述四个屏幕像素点中是否存在相同的屏幕像素点,若存在相同的屏幕像素点时,则只保留所述相同的屏幕像素点中的一个屏幕像素点,将其他相同的屏幕像素点删除,并在删除了相应屏幕像素点的基础上实现点连线图形的绘制,进一步减少了点绘图的屏幕像素点,从而进一步缩短了图形的绘制时间;并且删除的屏幕像素点只是相同的屏幕像素点,并不影响绘图准确性。因此本发明实施例在保证点绘图准确性的同时进一步缩短了绘图时间,提高了用户体验。
本发明的再一个实施例提供了一种点连线的装置,如图8所示,该装置包括:第二转换单元61、第二选取单元62、第三绘图单元63和第四绘图单元64。
第二转换单元61,用于将需要绘制的图形所包含的所有原始数据点转换为对应的屏幕像素点,各个屏幕像素点对应各自的屏幕像素行和屏幕像素行;其中,所述第二转换单元61将需要绘制的图形所包含的所有原始数据点转换为对应的屏幕像素点,可以采用现有技术中任一种方法,本发明实施例对此不进行限制,具体的描述可以参考图1中的步骤101中的相应描述,本发明实施例此处将不再赘述。
第二选取单元62,用于从各个屏幕像素行中选取所述第二转换单元61转换得到的四个屏幕像素点,所述四个屏幕像素点分别为坐标转换前所述原始数据点中横坐标最小的原始数据点对应的第一屏幕像素点、横坐标最大的原始数据点对应的第二屏幕像素点、纵坐标最小的原始数据点对应的第三屏幕像素点以及纵坐标最大的原始数据点对应的第四屏幕像素点;其中,在第二转换单元61将原始数据点转换为屏幕像素点时,会建立原始数据点和屏幕像素点的一一对应关系表,并将该对应关系表保存,当需要查找特定的屏幕像素点时,由于一个屏幕像素行中的屏幕像素点的横坐标都是相等的,不能精确的查找不同的屏幕像素点,因此在选取特定的点屏幕像素点时,可以先根据原始数据点的坐标选取特定的原始数据点,再根据该保存的对应关系表获取与所述选取的原始数据点对应的屏幕像素点。具体的描述,可以参考图1中的步骤102中的相应描述,本发明实施例此处将不再赘述。
第三绘图单元63,用于按照第一个点为所述第三屏幕像素点,最后一个点为所述第四屏幕像素点的预定顺序,依次连接所述各个屏幕像素行中的所述四个屏幕像素点。
第四绘图单元64,用于将相邻行的屏幕像素点按照屏幕像素点中横坐标小的一行的第四屏幕像素点与屏幕像素点中横坐标大的一行的第三屏幕像素点相连的方式依次连接,得到所述需要绘制的图形。
进一步可选的,为了进一步的过滤不必要的屏幕像素点,缩短绘图时间,如图9所示,该绘图装置还包括:第二查找单元65和第二处理单元66。
第二查找单元65,用于在所述第二选取单元66从各个屏幕像素行中选取四个屏幕像素点之后,查找所述各个屏幕像素行中的所述四个屏幕像素点中是否存在相同的屏幕像素点。其中,所述第二查找单元65查找所述各个屏幕像素行中选取的所述四个屏幕像素点中是否存在相同的屏幕像素点时,即查找上所述四个屏幕像素点中是否存在横坐标和总坐标都相等的屏幕像素点。
第二处理单元66,用于在所述查找单元65查找到所述各个屏幕像素行中的所述四个屏幕像素点中存在相同的屏幕像素点时,保留所述相同屏幕像素点中的一个屏幕像素点,将其他所述相同屏幕像素点删除。
所述第三绘图单元63还用于,按照第一个点为所述第三屏幕像素点,最后一个点为所述第四屏幕像素点的预定顺序,依次连接各个屏幕像素行中删除相同屏幕像素点后的屏幕像素点。
进一步,如图10所示,所述第三绘图单元66包括:第三绘图模块631和/或第四绘图模块632。
所述第三绘图模块631,用于按照第三屏幕像素点、第一屏幕像素点、第二屏幕像素点以及第四屏幕像素点的次序,依次连接所述各个屏幕像素行中的所述四个屏幕像素点。
所述第二绘图模块632,用于按照第三屏幕像素点、第二屏幕像素点、第一屏幕像素点以及第四屏幕像素点的次序,依次连接所述各个屏幕像素行中的所述四个屏幕像素点。
这里需要说明的是,所述第三绘图模块631和第四绘图模块632可以单独存在,也可以结合存在,当结合存在时,提高了设备的兼容性,用户在具体使用时可以根据自己的需求选择具体启动哪个功能模块,本发明实施例不进行限制。
其中,这里需要说明的是,上述各功能单元以及功能模块的具体描述,可以参考图6至图7中的相应描述,本发明实施例将不再赘述。
本发明实施中,能够在缩短绘图时间的同时保证绘图的准确性。更进一步的,本发明实施例在从各个屏幕像素行中选取四个屏幕像素点之后,查询各个屏幕像素行的所述四个屏幕像素点中是否存在相同的屏幕像素点,若存在相同的屏幕像素点时,则只保留所述相同的屏幕像素点中的一个屏幕像素点,将其他相同的屏幕像素点删除,并在删除了相应屏幕像素点的基础上实现点连线图形的绘制,进一步减少了点绘图的屏幕像素点,从而进一步缩短了图形的绘制时间;并且删除的屏幕像素点只是相同的屏幕像素点,并不影响绘图准确性。因此本发明实施例在保证点绘图准确性的同时进一步缩短了绘图时间,提高了用户体验。
发明人在创造本发明时,进行了具体的测试,以本发明实施例的技术方案和现有技术中先将所有需要连接的点转换为屏幕上的像素点,再利用计算机提供的在两点之间画线的函数依次连接相邻的两个点,得到预定图形的方案进行了具体测试,测试的环境具体为:系统为Microsoft Windows XP professional,版本为2002,Service Pack2,计算机配置为Intel(R)Pentium(R)DualCPU,E2180@2.00GHz,2.00GHz,1.99GB的内存物理地址扩展,则的得到的绘图时间对比的结果如下表1所示,包括;
原始数据点数 | 1万 | 10万 | 100万 | 1000万 | 1亿 |
现有技术耗费的时间 | 52ms | 510ms | 5s | 56s | 560s |
本发明实施例耗费时间 | 3.1ms | 4.5ms | 13ms | 104ms | 1s |
由上述测试数据可证明,采用本发明实施例可以较大程度的缩短绘图时间,提高了用户体验。
并且,按照上述现有技术绘制的图形如图11所示,图11的左侧为在大屏幕中显示的绘制的图形,第I列、第J列以及第K列中存在多个屏幕像素节点,将每列中的所有屏幕像素节点按照相邻的两个屏幕像素节点相连的方式依次相连;图11的右侧为在小屏幕上显示的绘制的图形,第I列、第J列以及第K列中的各个屏幕像素列的中的屏幕像素点被压缩到一列像素中,各个屏幕像素列中的纵坐标最小的原始数据点对应的幕像素点以及纵坐标最大的原始数据点对应的屏幕像素点用于表示该列中所有屏幕像素点首尾相连的直线,而横坐标最小的原始数据点对应的屏幕像素点用于与前一列的最后一个屏幕像素点相连,横坐标最大的原始数据点对应的屏幕像素点用于与后一列的第一个屏幕像素点相连。
按照现本发明实施例的技术方案,绘制的图形如图12所示,图12的左侧为在大屏幕中显示的绘制的图形,第I列、第J列以及第K列中存在四个屏幕像素节点,分别为POINTI·xmin、POINTI·xmax、POINTI·ymin、POINTI·ymax;POINTJ·xmin、POINTJ·xmax、POINTJ·ymin、POINTJ·ymax;POINTK·xmax、POINTK·xmax、POINTK·ymin、POINTK·ymax将每列中的四个屏幕像素节点按照一定的顺序依次相连;图12的右侧为在小屏幕上显示的绘制的图形,第I列、第J列以及第K列中,各个屏幕像素列中的四个屏幕像素点也被压缩到一列像素中,各个屏幕像素列中的纵坐标最小的原始数据点对应的幕像素点以及纵坐标最大的原始数据点对应的屏幕像素点用于表示该列中所有屏幕像素点首尾相连的直线,而横坐标最小的原始数据点对应的屏幕像素点用于与前一列的最后一个屏幕像素点相连,横坐标最大的原始数据点对应的屏幕像素点用于与后一列的第一个屏幕像素点相连。
通过上述两个在小屏幕上显示的绘制的图形,可知通过本发明实施例的过滤方案绘制的图形,和通过现有技术中不过滤点的方案绘制的图形是相同的,所以本发明实施例提供的技术方案能够保证绘制图形的准确性。
通过以上的实施方式的描述,所属领域的技术人员可以清楚地了解到本发明可借助软件加必需的通用硬件的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在可读取的存储介质中,如计算机的软盘,硬盘或光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。
Claims (12)
1.一种绘图方法,其特征在于,包括:
将需要绘制的图形所包含的所有原始数据点转换为对应的屏幕像素点,各个屏幕像素点对应各自的屏幕像素列和屏幕像素行;
从各个屏幕像素列中选取四个屏幕像素点,所述四个屏幕像素点分别为坐标转换前所述原始数据点中横坐标最小的原始数据点对应的第一屏幕像素点、横坐标最大的原始数据点对应的第二屏幕像素点、纵坐标最小的原始数据点对应的第三屏幕像素点以及纵坐标最大的原始数据点对应的第四屏幕像素点;
按照第一个点为所述第一屏幕像素点,最后一个点为所述第二屏幕像素点的预定顺序,依次连接所述各个屏幕像素列中的所述四个屏幕像素点;
将相邻列的屏幕像素点按照屏幕像素点中横坐标小的一列的第二屏幕像素点与屏幕像素点中横坐标大的一列的第一屏幕像素点相连的方式依次连接,得到所述需要绘制的图形。
2.根据权利要求1所述的方法,其特征在于,在从各个屏幕像素列中选取四个屏幕像素点之后,该方法还包括:
查找所述各个屏幕像素列中的所述四个屏幕像素点中是否存在相同的屏幕像素点;
若所述四个屏幕像素点中存在相同的屏幕像素点,则保留所述相同屏幕像素点中的一个屏幕像素点,将其他所述相同屏幕像素点删除;
所述按照第一个点为所述第一屏幕像素点,最后一个点为所述第二屏幕像素点的预定顺序,依次连接所述各个屏幕像素列中的所述四个屏幕像素点为:按照第一个点为所述第一屏幕像素点,最后一个点为所述第二屏幕像素点的预定顺序,依次连接各个屏幕像素列中删除相同屏幕像素点后的屏幕像素点。
3.根据权利要求1或2所述的方法,其特征在于,所述按照第一个点为所述第一屏幕像素点,最后一个点为所述第二屏幕像素点的预定顺序,依次连接所述各个屏幕像素列中的所述四个屏幕像素点,包括:
按照第一屏幕像素点、第三屏幕像素点、第四屏幕像素点以及第二屏幕像素点的次序,依次连接所述各个屏幕像素列中的所述四个屏幕像素点;或者
按照第一屏幕像素点、第四屏幕像素点、第三屏幕像素点以及第二屏幕像素点的次序,依次连接所述各个屏幕像素列中的所述四个屏幕像素点。
4.一种绘图装置,其特征在于,包括:
第一转换单元,用于将需要绘制的图形所包含的所有原始数据点转换为对应的屏幕像素点,各个屏幕像素点对应各自的屏幕像素列和屏幕像素行;
第一选取单元,用于从各个屏幕像素列中选取所述第一转换单元转换得到的四个屏幕像素点,所述四个屏幕像素点分别为坐标转换前所述原始数据点中横坐标最小的原始数据点对应的第一屏幕像素点、横坐标最大的原始数据点对应的第二屏幕像素点、纵坐标最小的原始数据点对应的第三屏幕像素点以及纵坐标最大的原始数据点对应的第四屏幕像素点;
第一绘图单元,用于按照第一个点为所述第一屏幕像素点,最后一个点为所述第二屏幕像素点的预定顺序,依次连接所述各个屏幕像素列中的所述四个屏幕像素点;
第二绘图单元,用于将相邻列的屏幕像素点按照屏幕像素点中横坐标小的一列的第二屏幕像素点与屏幕像素点中横坐标大的一列的第一屏幕像素点相连的方式依次连接,得到所述需要绘制的图形。
5.根据权利要求4所述的装置,其特征在于,还包括:
第一查找单元,用于在所述第一选取单元从各个屏幕像素列中选取四个屏幕像素点之后,查找所述各个屏幕像素列中的所述四个屏幕像素点中是否存在相同的屏幕像素点;
第一处理单元,用于在所述第一查找单元查找到所述四个屏幕像素点中存在相同的屏幕像素点时,保留所述相同屏幕像素点中的一个屏幕像素点,将其他所述相同屏幕像素点删除;
所述第一绘图单元还用于,按照第一个点为所述第一屏幕像素点,最后一个点为所述第二屏幕像素点的预定顺序,依次连接各个屏幕像素列中删除相同屏幕像素点后的屏幕像素点。
6.根据权利要求4或5所述的装置,其特征在于,所述第一绘图单元包括:
第一绘图模块,用于按照第一屏幕像素点、第三屏幕像素点、第四屏幕像素点以及第二屏幕像素点的次序,依次连接所述各个屏幕像素列中的所述四个屏幕像素点;和/或
第二绘图模块,用于按照第一屏幕像素点、第四屏幕像素点、第三屏幕像素点以及第二屏幕像素点的次序,依次连接所述各个屏幕像素列中的所述四个屏幕像素点。
7.一种绘图方法,其特征在于,包括:
将需要绘制的图形所包含的所有原始数据点转换为对应的屏幕像素点,各个屏幕像素点对应各自的屏幕像素列和屏幕像素行;
从各个屏幕像素行中选取四个屏幕像素点,所述四个屏幕像素点分别为坐标转换前所述原始数据点中横坐标最小的原始数据点对应的第一屏幕像素点、横坐标最大的原始数据点对应的第二屏幕像素点、纵坐标最小的原始数据点对应的第三屏幕像素点以及纵坐标最大的原始数据点对应的第四屏幕像素点;
按照第一个点为所述第三屏幕像素点,最后一个点为所述第四屏幕像素点的预定顺序,依次连接所述各个屏幕像素行中的所述四个屏幕像素点;
将相邻行的屏幕像素点按照屏幕像素点中纵坐标小的一行的第四屏幕像素点与屏幕像素点中纵坐标大的一行的第三屏幕像素点相连的方式依次连接,得到所述需要绘制的图形。
8.根据权利要求7所述的方法,其特征在于,在从各个屏幕像素行中选取四个屏幕像素点之后,该方法还包括:
查找所述各个屏幕像素行中的所述四个屏幕像素点中是否存在相同的屏幕像素点;
若所述四个屏幕像素点中存在相同的屏幕像素点,则保留所述相同屏幕像素点中的一个屏幕像素点,将其他所述相同屏幕像素点删除;
所述按照第一个点为所述第三屏幕像素点,最后一个点为所述第四屏幕像素点的预定顺序,依次连接所述各个屏幕像素行中的所述四个屏幕像素点为:按照第一个点为所述第三屏幕像素点,最后一个点为所述第四屏幕像素点的预定顺序,依次连接各个屏幕像素行中删除相同屏幕像素点后的屏幕像素点。
9.根据权利要求7或8所述的方法,其特征在于,所述按照第一个点为所述第三屏幕像素点,最后一个点为所述第四屏幕像素点的预定顺序,依次连接所述各个屏幕像素行中的所述四个屏幕像素点,包括:
按照第三屏幕像素点、第一屏幕像素点、第二屏幕像素点以及第四屏幕像素点的次序,依次连接所述各个屏幕像素行中的所述四个屏幕像素点;或者
按照第三屏幕像素点、第二屏幕像素点、第一屏幕像素点以及第四屏幕像素点的次序,依次连接所述各个屏幕像素行中的所述四个屏幕像素点。
10.一种绘图装置,其特征在于,包括:
第二转换单元,用于将需要绘制的图形所包含的所有原始数据点转换为对应的屏幕像素点,各个屏幕像素点对应各自的屏幕像素列和屏幕像素行;
第二选取单元,用于从各个屏幕像素行中选取所述第二转换单元转换得到的四个屏幕像素点,所述四个屏幕像素点分别为坐标转换前所述原始数据点中横坐标最小的原始数据点对应的第一屏幕像素点、横坐标最大的原始数据点对应的第二屏幕像素点、纵坐标最小的原始数据点对应的第三屏幕像素点以及纵坐标最大的原始数据点对应的第四屏幕像素点;
第三绘图单元,用于按照第一个点为所述第三屏幕像素点,最后一个点为所述第四屏幕像素点的预定顺序,依次连接所述各个屏幕像素行中的所述四个屏幕像素点;
第四绘图单元,用于将相邻行的屏幕像素点按照屏幕像素点中纵坐标小的一行的第四屏幕像素点与屏幕像素点中纵坐标大的一行的第三屏幕像素点相连的方式依次连接,得到所述需要绘制的图形。
11.根据权利要求10所述的装置,其特征在于,还包括:
第二查找单元,用于在所述第二选取单元从各个屏幕像素行中选取四个屏幕像素点之后,查找所述各个屏幕像素行中的所述四个屏幕像素点中是否存在相同的屏幕像素点;
第二处理单元,用于在所述第二查找单元查找到所述四个屏幕像素点中存在相同的屏幕像素点时,保留所述相同屏幕像素点中的一个屏幕像素点,将其他所述相同屏幕像素点删除;
所述第三绘图单元还用于,按照第一个点为所述第三屏幕像素点,最后一个点为所述第四屏幕像素点的预定顺序,依次连接各个屏幕像素行中删除相同屏幕像素点后的屏幕像素点。
12.根据权利要求10或11所述的装置,其特征在于,所述第三绘图单元包括:
第三绘图模块,用于按照第三屏幕像素点、第一屏幕像素点、第二屏幕像素点以及第四屏幕像素点的次序,依次连接所述各个屏幕像素行中的所述四个屏幕像素点;和/或
第四绘图模块,用于按照第三屏幕像素点、第二屏幕像素点、第一屏幕像素点以及第四屏幕像素点的次序,依次连接所述各个屏幕像素行中的所述四个屏幕像素点。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2010105161336A CN101976448B (zh) | 2010-10-22 | 2010-10-22 | 绘图方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2010105161336A CN101976448B (zh) | 2010-10-22 | 2010-10-22 | 绘图方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101976448A true CN101976448A (zh) | 2011-02-16 |
CN101976448B CN101976448B (zh) | 2012-04-04 |
Family
ID=43576330
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2010105161336A Active CN101976448B (zh) | 2010-10-22 | 2010-10-22 | 绘图方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101976448B (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106033409A (zh) * | 2015-03-20 | 2016-10-19 | 广州金山移动科技有限公司 | 一种顶点编辑方法及装置 |
CN106771452A (zh) * | 2016-11-15 | 2017-05-31 | 中国电子科技集团公司第四十研究所 | 一种基于mfc类库和屏幕分辨率的波形绘制和采集方法 |
US20190051025A1 (en) * | 2017-08-08 | 2019-02-14 | Thermo Finnigan Llc | Data reduction and display without quality loss |
CN110597697A (zh) * | 2019-09-24 | 2019-12-20 | 武汉恒力华振科技有限公司 | 一种基于像素点数量的高频时序数据实时稀疏显示方法 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2000194416A (ja) * | 1998-12-28 | 2000-07-14 | Canon Inc | デ―タ表示装置及び方法 |
US20030038804A1 (en) * | 2001-08-23 | 2003-02-27 | Tool Kabushiki Kaisha | Fast drawing method and apparatus for large picture data |
CN101014982A (zh) * | 2004-08-04 | 2007-08-08 | 松下电器产业株式会社 | 绘制装置 |
-
2010
- 2010-10-22 CN CN2010105161336A patent/CN101976448B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2000194416A (ja) * | 1998-12-28 | 2000-07-14 | Canon Inc | デ―タ表示装置及び方法 |
US20030038804A1 (en) * | 2001-08-23 | 2003-02-27 | Tool Kabushiki Kaisha | Fast drawing method and apparatus for large picture data |
CN101014982A (zh) * | 2004-08-04 | 2007-08-08 | 松下电器产业株式会社 | 绘制装置 |
Non-Patent Citations (2)
Title |
---|
《Proceedings of the Second International Conference on Document Analysis and Recognition》 19931022 Pasternak, B. etc. Adaptable drawing interpretation using object-oriented and constraint-based graphic specification 第359-364页 1-12 , 2 * |
《系统仿真学报》 20090430 姜琼 等 基于计算机图形处理器加速的体绘制 第2285-2287、2291页 1-12 第21卷, 第8期 2 * |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106033409A (zh) * | 2015-03-20 | 2016-10-19 | 广州金山移动科技有限公司 | 一种顶点编辑方法及装置 |
CN106033409B (zh) * | 2015-03-20 | 2019-07-26 | 广州金山移动科技有限公司 | 一种顶点编辑方法及装置 |
CN106771452A (zh) * | 2016-11-15 | 2017-05-31 | 中国电子科技集团公司第四十研究所 | 一种基于mfc类库和屏幕分辨率的波形绘制和采集方法 |
US20190051025A1 (en) * | 2017-08-08 | 2019-02-14 | Thermo Finnigan Llc | Data reduction and display without quality loss |
CN110597697A (zh) * | 2019-09-24 | 2019-12-20 | 武汉恒力华振科技有限公司 | 一种基于像素点数量的高频时序数据实时稀疏显示方法 |
CN110597697B (zh) * | 2019-09-24 | 2023-06-02 | 武汉恒力华振科技有限公司 | 一种基于像素点数量的高频时序数据实时稀疏显示方法 |
Also Published As
Publication number | Publication date |
---|---|
CN101976448B (zh) | 2012-04-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN100573651C (zh) | 一种色域映射实时处理方法及实时处理电路 | |
CN101976448B (zh) | 绘图方法及装置 | |
CN104572783A (zh) | 网页点击情况的展示方法及装置 | |
CN102890632A (zh) | 一种屏幕自适应方法、系统和终端设备 | |
CN107273000B (zh) | 一种智能示波器的屏幕多分辨率适配方法 | |
CN104932777A (zh) | 一种应用图标的排序方法和装置 | |
CN111159492A (zh) | 一种轨迹点检索方法、装置、存储介质及终端 | |
CN105930513A (zh) | 一种浏览器历史记录排序方法及装置 | |
CN107087052A (zh) | 一种天气信息智能显示方法及终端 | |
CN104679391A (zh) | 智能手表的图标显示方法及装置 | |
CN106446027A (zh) | 信息推荐方法及装置 | |
CN104699788A (zh) | 数据库查询方法和装置 | |
CN105320609A (zh) | 一种基于移动终端的数据存储方法及系统 | |
CN103902294A (zh) | 一种浏览器图像显示方法及终端 | |
CN105005550A (zh) | 表格生成方法和装置 | |
CN109164999B (zh) | 一种表格自适应显示的方法、装置、设备及可读存储介质 | |
CN102902534B (zh) | 一种透明osd软件实现方法 | |
CN103294788A (zh) | 一种通用网站的后台处理方法及系统 | |
CN114222317A (zh) | 数据处理方法及装置、电子设备和存储介质 | |
CN103606175B (zh) | 一种地图热点图标的显示方法及控制器 | |
CN105160068A (zh) | 一种绘图转换方法及装置 | |
CN112906091A (zh) | 一种基于cad的地理信息绘制方法、装置、终端及介质 | |
CN106682228A (zh) | 一种可视化动态绘制机柜排列的方法和装置 | |
CN103678420A (zh) | 一种建立多维数据集的方法和多维数据集处理装置 | |
CN104978374A (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 | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |