CN104616332A - 一种快速显示方法 - Google Patents
一种快速显示方法 Download PDFInfo
- Publication number
- CN104616332A CN104616332A CN201510028811.7A CN201510028811A CN104616332A CN 104616332 A CN104616332 A CN 104616332A CN 201510028811 A CN201510028811 A CN 201510028811A CN 104616332 A CN104616332 A CN 104616332A
- Authority
- CN
- China
- Prior art keywords
- coordinate data
- data
- axis pixel
- coordinate
- minimum value
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 27
- 241001269238 Data Species 0.000 claims description 22
- 230000006870 function Effects 0.000 description 10
- 230000008859 change Effects 0.000 description 4
- 238000005259 measurement Methods 0.000 description 3
- 230000008569 process Effects 0.000 description 3
- 230000009286 beneficial effect Effects 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000003672 processing method Methods 0.000 description 2
- 230000003321 amplification Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000013501 data transformation Methods 0.000 description 1
- 230000007812 deficiency Effects 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 230000004069 differentiation Effects 0.000 description 1
- 238000003199 nucleic acid amplification method Methods 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Landscapes
- Controls And Circuits For Display Device (AREA)
Abstract
本申请公开了一种快速显示方法,包括步骤:采集信号数据,转换为坐标数据;统计出每个X轴像素所对应的全部坐标数据,判断出每个X轴像素中的坐标数据大于或等于6个;记录每个X轴像素上的第一个坐标数据和最后一个坐标数据,查找每个X轴像素上其余坐标数据中的最大值和最小值,将所述第一个坐标数据、最后一个坐标数据、最大值和最小值组成一组新的坐标数据;利用所述新的坐标数据画线,进行显示。通过本发明的快速显示把每一个像素点要画的数据转化为4个数据,大大降低数据量,节省了画线时间。
Description
技术领域
本发明属于信号测量领域,具体地说,是涉及一种快速显示方法。
背景技术
在信号测量领域,图形显示是不可缺少的一部分,因为针对庞大的数据量,要想从单纯的数字中看出信号变化过程和趋势是相当困难的,所以需要把信号数据处理后显示在屏幕上,通过曲线显示的方式查看信号变化的过程和趋势,一目了然。WINCE的操作系统上可以把每一个信号数据对应的转化成屏幕坐标,然后把转化好的屏幕坐标通过VC++的Polyline函数显示在屏幕上。
如果测量数据不多的情况下,屏幕显示速度尚可以接受,但如果数据量超大时,需要把所有数据转换成屏幕坐标,再用Polyline函数显示在屏幕上,速度就会变的非常慢,尤其在CPU主频为400Mhz,内存1G,硬盘1G等有限的硬件资源条件下,严重拖慢了系统的运行速度。
现有技术中数据采集模块会对当前的信号进行采样,之后把信号采样的数据转给数据存储模块存储,然后调用数据处理模块,把所有采样数据进行坐标转换成显示模块需要的屏幕坐标,之后数据显示模块把转换好的坐标数据显示到屏幕上。由于数据量超大,硬件计算资源有限,所以在显示数据曲线的时候导致出现很多问题,如CPU利用率过高,系统被拖慢,内存不足程序崩溃等。
发明内容
本发明的目的在于克服上述不足,提供了一种快速显示方法,包括以下步骤,
采集信号数据,转换为坐标数据;
统计出每个X轴像素所对应的全部坐标数据,判断出每个X轴像素中的坐标数据大于或等于6个;
记录每个X轴像素上的第一个坐标数据和最后一个坐标数据,查找每个X轴像素上其余坐标数据中的最大值和最小值,将所述第一个坐标数据、最后一个坐标数据、最大值和最小值组成一组新的坐标数据;
利用所述新的坐标数据画线,进行显示。
优选地,所述快速显示方法还包括步骤:统计出每个X轴像素所对应的全部坐标数据,判断出每个X轴像素中的坐标数据小于6个,直接将该坐标数据画线,进行显示。
优选地,所述记录每个X轴像素上的第一个坐标数据和最后一个坐标数据,查找每个X轴像素上其余坐标数据中的最大值和最小值,将所述第一个坐标数据、最后一个坐标数据、最大值和最小值组成一组新的坐标数据,进一步为,
记录每个X轴像素上的第一个坐标数据和最后一个坐标数据,查找每个X轴像素上其余坐标数据中的最大值和最小值,所述最大值和最小值进一步为每个X轴像素上的坐标数据中,横坐标相等,纵坐标最大和纵坐标最小的坐标数据,将所述第一个坐标数据、最后一个坐标数据、最大值和最小值组成一组新的坐标数据。
优选地,所述利用所述新的坐标数据画线,进行显示,进一步为,
采用Polyline函数利用所述新的坐标数据画线,进行显示。
优选地,所述Polyline函数,为BOOL CDC::Polyline(const POINT*lpPoints,int nCount),其中lpPoints为坐标数据,nCount为数据个数。
与现有技术相比,本发明所述的快速显示方法,具有以下有益效果:
节省了时间,通过本发明的快速显示把每一个X轴像素点要画线的坐标数据转化为4个坐标数据,大大降低了数据量,节省了画线时间。
附图说明
此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
图1是现有技术中显示数据的结构图;
图2是本发明的快速显示方法的流程图;
图3是实施例2的显示效果图。
具体实施方式
如在说明书及权利要求当中使用了某些词汇来指称特定组件。本领域技术人员应可理解,硬件制造商可能会用不同名词来称呼同一个组件。本说明书及权利要求并不以名称的差异来作为区分组件的方式,而是以组件在功能上的差异来作为区分的准则。如在通篇说明书及权利要求当中所提及的“包含”为一开放式用语,故应解释成“包含但不限定于”。“大致”是指在可接收的误差范围内,本领域技术人员能够在一定误差范围内解决所述技术问题,基本达到所述技术效果。说明书后续描述为实施本申请的较佳实施方式,然所述描述乃以说明本申请的一般原则为目的,并非用以限定本申请的范围。本申请的保护范围当视所附权利要求所界定者为准。
实施例1
结合图2,本实施例提供了一种快速显示方法,包括以下步骤:
步骤1)采集信号数据,转换为坐标数据;
步骤2)统计出每个X轴像素所对应的全部坐标数据,判断出每个X轴像素中的坐标数据大于或等于6个;
步骤3)记录每个X轴像素上的第一个坐标数据和最后一个坐标数据,查找每个X轴像素上其余坐标数据中的最大值和最小值,将所述第一个坐标数据、最后一个坐标数据、最大值和最小值组成一组新的坐标数据;
步骤4)利用所述新的坐标数据画线,进行显示。
优选地,所述快速显示方法还包括步骤:统计出每个X轴像素所对应的全部坐标数据,判断出每个X轴像素中的坐标数据小于6个,直接将该坐标数据画线,进行显示。
优选地,所述记录每个X轴像素上的第一个坐标数据和最后一个坐标数据,查找每个X轴像素上其余坐标数据中的最大值和最小值,将所述第一个坐标数据、最后一个坐标数据、最大值和最小值组成一组新的坐标数据,进一步为,
记录每个X轴像素上的第一个坐标数据和最后一个坐标数据,查找每个X轴像素上其余坐标数据中的最大值和最小值,所述最大值和最小值进一步为每个X轴像素上的坐标数据中,横坐标相等,纵坐标最大和纵坐标最小的坐标数据,将所述第一个坐标数据、最后一个坐标数据、最大值和最小值组成一组新的坐标数据。
优选地,所述利用所述新的坐标数据画线,进行显示,进一步为,
采用Polyline函数利用所述新的坐标数据画线,进行显示。这里所述的画线即是将坐标数据连线,
优选地,所述Polyline函数,为BOOL CDC::Polyline(const POINT*lpPoints,int nCount),其中lpPoints为坐标数据,nCount为数据个数。
需要说明的是本发明仅对数据处理和数据显示这一部分进行优化,而数据采集和数据存储均采用现有技术中的方法实现,这里不做具体限定。
实施例2
结合图2,本实施例提供了一种快速显示方法,包括以下步骤:
步骤1)采集信号数据,转换为坐标数据;
步骤2)统计出每个X轴像素所对应的全部坐标数据,判断出每个X轴像素中的坐标数据小于6个,直接将该坐标数据画线,进行显示。
步骤3)统计出每个X轴像素所对应的全部坐标数据,判断出每个X轴像素中的坐标数据大于或等于6个;
步骤4)记录每个X轴像素上的第一个坐标数据和最后一个坐标数据,查找每个X轴像素上其余坐标数据中的最大值和最小值,将所述第一个坐标数据、最后一个坐标数据、最大值和最小值组成一组新的坐标数据;
步骤5)利用所述新的坐标数据画线,进行显示。
优选地,所述记录每个X轴像素上的第一个坐标数据和最后一个坐标数据,查找每个X轴像素上其余坐标数据中的最大值和最小值,将所述第一个坐标数据、最后一个坐标数据、最大值和最小值组成一组新的坐标数据,进一步为,
记录每个X轴像素上的第一个坐标数据和最后一个坐标数据,查找每个X轴像素上其余坐标数据中的最大值和最小值,所述最大值和最小值进一步为每个X轴像素上的坐标数据中,横坐标相等,纵坐标最大和纵坐标最小的坐标数据,将所述第一个坐标数据、最后一个坐标数据、最大值和最小值组成一组新的坐标数据。
优选地,所述利用所述新的坐标数据画线,进行显示,进一步为,
采用Polyline函数利用所述新的坐标数据画线,进行显示。
优选地,所述Polyline函数,为BOOL CDC::Polyline(const POINT*lpPoints,int nCount),其中lpPoints为坐标数据,nCount为数据个数。
实施例3:
在实施例1的基础上,本实施例提供的应用实施例。
由于Polyline函数在大数据量的时候非常消耗CPU资源和内存资源,所以适当的减少Polyline所处理的数据量,对减少消耗系统资源非常明显。
由于嵌入式系统屏幕大小有限,可供画图曲线部分也很小,如本实施例中的仪表屏幕大小为640*480像素,画图曲线部分大小为500*300像素,以X轴为基准,如果当前有100000个数据,要想完全显示在500个像素中,每个像素需要重合200个数据。由于屏幕曲线只显示趋势,不代表实际数据,所以本发明对坐标数据进行如下处理:
1)计算每个X轴像素上需要显示的数据点个数;
2)找出在该X轴像素点上显示的数据的第一个数据和最后一个数据,以保证该X轴像素与前一个X轴像素和后一个X轴像素的关联性;
3)在第一个数据和最后一个数据之间查找最大值和最小值,以保证该X轴像素点上Y轴数据的正确性。最大值和最小值进一步为每个X轴像素上的坐标数据中,横坐标相等,纵坐标最大和纵坐标最小的坐标数据。
4)将第一个数据、最大值、最小值、最后一个数据这四个数据重新组成一组坐标数据,
这样在X轴上不管有多少数据都可以处理成500×4=2000个数据量。然后调用Polyline函数显示在屏幕上。
以下举例说明:
以6组数据为例
(1,9),(1,8),(1,1),(1,8),(1,8),(1,1)
(2,4),(2,4),(2,7),(2,7),(2,7),(2,5)
(3,6),(3,6),(3,6),(3,6),(3,5),(3,6)
(4,5),(4,5),(4,5),(4,5),(4,5),(4,5)
(5,5),(5,1),(5,1),(5,1),(5,1),(5,5)
(6,5),(6,10),(6,8),(6,8),(6,8),(6,5)
这6组数据在屏幕像素上画曲线,放大后如图3所示。
按照本发明的方法将数据处理为以下新的坐标数据:
(1,9),(1,8),(1,1),(1,1)
(2,4),(2,4),(2,7),(2,5)
(3,6),(3,6),(3,5),(3,6)
(4,5),(4,5),(4,5),(4,5)
(5,5),(5,1),(5,1),(5,5)
(6,5),(6,10),(6,8),(6,5)
新的坐标数据处理后画线,与如图3一样。因为每个像素点的第一个数据和最后一个数据没变,在其中间查找一个最大值和一个最小值,所画曲线完全是一样的。视觉效果也一样,但是所需数据量少了。
以1000000数据为例,现有技术的方法画线所需时间为233ms,如果使用本发明的数据处理方式,因为坐标数据为整型数据,做1000000次的对比查找最大值和最小值相对来说需要较少时间,处理时间加画线时间为99ms。可以看出新的数据处理方式可以节约大量的时间,并且数据量越大,新的算法越省时间。
与现有技术相比,本发明所述的快速显示方法,具有以下有益效果:
节省时间了,通过本发明的快速显示把每一个像素点要画的数据转化为4个数据,大大降低数据量,节省了画线时间。
上述说明示出并描述了本申请的若干优选实施例,但如前所述,应当理解本申请并非局限于本文所披露的形式,不应看作是对其他实施例的排除,而可用于各种其他组合、修改和环境,并能够在本文所述申请构想范围内,通过上述教导或相关领域的技术或知识进行改动。而本领域人员所进行的改动和变化不脱离本申请的精神和范围,则都应在本申请所附权利要求的保护范围内。
Claims (5)
1.一种快速显示方法,其特征在于,包括以下步骤,
采集信号数据,转换为坐标数据;
统计出每个X轴像素所对应的全部坐标数据,判断出每个X轴像素中的坐标数据大于或等于6个;
记录每个X轴像素上的第一个坐标数据和最后一个坐标数据,查找每个X轴像素上其余坐标数据中的最大值和最小值,将所述第一个坐标数据、最后一个坐标数据、最大值和最小值组成一组新的坐标数据;
利用所述新的坐标数据画线,进行显示。
2.根据权利要求1所述的快速显示方法,其特征在于,所述快速显示方法还包括步骤:统计出每个X轴像素所对应的全部坐标数据,判断出每个X轴像素中的坐标数据小于6个,直接将该坐标数据画线,进行显示。
3.根据权利要求1所述的快速显示方法,其特征在于,所述记录每个X轴像素上的第一个坐标数据和最后一个坐标数据,查找每个X轴像素上其余坐标数据中的最大值和最小值,将所述第一个坐标数据、最后一个坐标数据、最大值和最小值组成一组新的坐标数据,进一步为,
记录每个X轴像素上的第一个坐标数据和最后一个坐标数据,查找每个X轴像素上其余坐标数据中的最大值和最小值,所述最大值和最小值进一步为每个X轴像素上的坐标数据中,横坐标相等,纵坐标最大和纵坐标最小的坐标数据,将所述第一个坐标数据、最后一个坐标数据、最大值和最小值组成一组新的坐标数据。
4.根据权利要求3所述的快速显示方法,其特征在于,所述利用所述新的坐标数据画线,进行显示,进一步为,
采用Polyline函数利用所述新的坐标数据画线,进行显示。
5.根据权利要求4所述的快速显示方法,其特征在于,所述Polyline函数,为BOOL CDC::Polyline(const POINT*lpPoints,int nCount),其中lpPoints为坐标数据,nCount为数据个数。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN201510028811.7A CN104616332A (zh) | 2015-01-20 | 2015-01-20 | 一种快速显示方法 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN201510028811.7A CN104616332A (zh) | 2015-01-20 | 2015-01-20 | 一种快速显示方法 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| CN104616332A true CN104616332A (zh) | 2015-05-13 |
Family
ID=53150765
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| CN201510028811.7A Pending CN104616332A (zh) | 2015-01-20 | 2015-01-20 | 一种快速显示方法 |
Country Status (1)
| Country | Link |
|---|---|
| CN (1) | CN104616332A (zh) |
Cited By (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN105928551A (zh) * | 2016-05-12 | 2016-09-07 | 中国电子科技集团公司第四十研究所 | 一种微波毫米波综测仪视图刷新方法及系统 |
| CN110597697A (zh) * | 2019-09-24 | 2019-12-20 | 武汉恒力华振科技有限公司 | 一种基于像素点数量的高频时序数据实时稀疏显示方法 |
Citations (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US5438655A (en) * | 1993-07-29 | 1995-08-01 | Hewlett-Packard Company | Methods and apparatus for updating and antialiasing waveforms |
| CN101982820A (zh) * | 2010-11-22 | 2011-03-02 | 北京航空航天大学 | 一种大数据量的曲线显示查询方法 |
| CN102200880A (zh) * | 2010-03-25 | 2011-09-28 | 卡西欧计算机株式会社 | 曲线图显示装置以及曲线图显示方法 |
| CN102360287A (zh) * | 2011-09-28 | 2012-02-22 | 中国航天科工集团第四研究院第四总体设计部 | 一种用于高速实时仿真的曲线绘制方法 |
-
2015
- 2015-01-20 CN CN201510028811.7A patent/CN104616332A/zh active Pending
Patent Citations (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US5438655A (en) * | 1993-07-29 | 1995-08-01 | Hewlett-Packard Company | Methods and apparatus for updating and antialiasing waveforms |
| CN102200880A (zh) * | 2010-03-25 | 2011-09-28 | 卡西欧计算机株式会社 | 曲线图显示装置以及曲线图显示方法 |
| CN101982820A (zh) * | 2010-11-22 | 2011-03-02 | 北京航空航天大学 | 一种大数据量的曲线显示查询方法 |
| CN102360287A (zh) * | 2011-09-28 | 2012-02-22 | 中国航天科工集团第四研究院第四总体设计部 | 一种用于高速实时仿真的曲线绘制方法 |
Non-Patent Citations (3)
| Title |
|---|
| O303028708: "mfc如何快速的绘制大量的点?例如:大于1000000个点", 《HTTP://BBS.CSDN.NET/TOPICS/390800263》 * |
| RICHARD C.LEINECKER: "《Visual C++开发人员参考手册》", 30 June 1989 * |
| 郭晓冰: "基于VB的数字波形高速显示设计", 《宿州师专学报》 * |
Cited By (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN105928551A (zh) * | 2016-05-12 | 2016-09-07 | 中国电子科技集团公司第四十研究所 | 一种微波毫米波综测仪视图刷新方法及系统 |
| CN110597697A (zh) * | 2019-09-24 | 2019-12-20 | 武汉恒力华振科技有限公司 | 一种基于像素点数量的高频时序数据实时稀疏显示方法 |
| CN110597697B (zh) * | 2019-09-24 | 2023-06-02 | 武汉恒力华振科技有限公司 | 一种基于像素点数量的高频时序数据实时稀疏显示方法 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| KR101617696B1 (ko) | 데이터 정규표현식의 마이닝 방법 및 장치 | |
| CN103279478B (zh) | 一种基于分布式互信息文档特征提取方法 | |
| CN107239392B (zh) | 一种测试方法、装置、终端及存储介质 | |
| CN102222071A (zh) | 数据同步处理方法、设备及系统 | |
| CN111862343B (zh) | 一种三维重建方法、装置、设备及计算机可读存储介质 | |
| CN114298985A (zh) | 缺陷检测方法、装置、设备及存储介质 | |
| CN103530812B (zh) | 一种基于局部敏感哈希的电网状态相似度量化分析方法 | |
| CN108959237B (zh) | 一种文本分类方法、装置、介质及设备 | |
| CN102163189B (zh) | 从评论性文本中提取评价性信息的方法和装置 | |
| CN107566344A (zh) | 一种can信号解析方法及系统 | |
| CN104616332A (zh) | 一种快速显示方法 | |
| CN104376578A (zh) | 一种应用于直录播系统中的运动目标检测处理方法及设备 | |
| CN106683033B (zh) | 一种乱序OpenGL接口处理方法 | |
| CN107704290A (zh) | 一种动态调节操作系统参数的方法及工具 | |
| Jia | Fabric defect detection based on open source computer vision library OpenCV | |
| CN103607249A (zh) | 一种ds/fh混合扩频信号参数测试方法与系统 | |
| CN111861920A (zh) | 一种中值滤波方法以及系统 | |
| US9158798B2 (en) | Database large object reorganization | |
| CN105512237A (zh) | 一种复杂结构的数据导入系统 | |
| Shao et al. | Based on total variation regularization iterative blind image restoration algorithm | |
| US12111244B2 (en) | Method for calculating a density of stem cells in a cell image, electronic device, and storage medium | |
| CN105373521B (zh) | 一种基于Minwise Hash动态多阈值过滤计算文本相似度的方法 | |
| CN116150202A (zh) | 基于Flink多场景实时计算关联方法、装置、终端设备及存储介质 | |
| CN111527472B (zh) | 降噪方法、触控显示装置和计算机可读存储介质 | |
| CN114398390A (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 | ||
| RJ01 | Rejection of invention patent application after publication |
Application publication date: 20150513 |
|
| RJ01 | Rejection of invention patent application after publication |