CN108958877A - 一种实时更新采集图像数据的绘图系统和方法 - Google Patents
一种实时更新采集图像数据的绘图系统和方法 Download PDFInfo
- Publication number
- CN108958877A CN108958877A CN201810926840.9A CN201810926840A CN108958877A CN 108958877 A CN108958877 A CN 108958877A CN 201810926840 A CN201810926840 A CN 201810926840A CN 108958877 A CN108958877 A CN 108958877A
- Authority
- CN
- China
- Prior art keywords
- real
- image data
- time update
- time
- painting canvas
- 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
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/451—Execution arrangements for user interfaces
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Processing Or Creating Images (AREA)
Abstract
本发明公开了一种实时更新采集图像数据的绘图系统和方法。该系统包括:封装有画布功能的ChartCtrl模块;对画布中的图像进行实时采集得到图像数据的图像采集模块;以及读取所述图像数据并进行分析的图像分析模块。本发明提供的实时更新采集图像数据的绘图系统和方法利用封装好的ChartCtrl类实时更新采集图像数据,实时进行数据分析。
Description
技术领域
本发明涉及绘图技术领域。更具体地,涉及一种实时更新采集图像数据的绘图系统和方法。
背景技术
在Windows中,绘图一般在视图窗口的客户区进行,使用的是设备上下文类CDC中的各种绘图函数。MFC绘图工具类包括CGdiObject、CBitmap、CBrush、CFont、CPallette、CPen和CRgn等。
(1)CBitmap:封装了一个GDI位图,提供位图操作的接口。
(2)CFont:封装了GDI字体,可以选作设备上下文中的当前字体。
(3)CBrush:封装了GDI画刷,选作设备上下文的当前画刷,画刷用于填充图形内部。
(4)CPen:封装了GDI画笔,选作设备上下文的当前画笔,画笔用于绘制图形边界线。
(5)CPallette:封装了GDI调色板,提供应用程序和显示器之间的颜色接口。
(6)CGdiObject:GDI绘图工具的基类,一般不能直接使用。
但基于对话框的绘图应用如何用MFC实现是一个复杂的事情,对于编程人员来说,如果能将基于对话框的绘图封装起来,并且预留一些接口,那么就可以实时更新采集数据图像,实时进行数据分析。
发明内容
本发明的目的在于提供一种实时更新采集图像数据的绘图系统和方法,利用封装好的ChartCtrl类实时更新采集数据图像,实时进行数据分析。
为了实现以上目的,本发明采用以下技术方案:
本发明一方面提供一种实时更新采集图像数据的绘图系统,该系统包括:
封装有画布功能的ChartCtrl模块;
对画布中的图像进行实时采集得到图像数据的图像采集模块;以及
读取所述图像数据并进行分析的图像分析模块。
优选地,所述系统还包括用以在画布中实时显示所述图像分析模块的分析结果的分析结果显示模块。
优选地,所述系统还包括用以保存所述图像数据的存储模块。
优选地,所述画布功能包括:显示XY坐标系、画线条、勾画进度条、书写对话框。
本发明另一方面提供一种实时更新采集图像数据的绘图方法,该方法采用封装好的ChartCtrl实时更新采集图像数据,并实时对所述图像数据进行分析。
优选地,所述封装好的ChartCtrl中封装有画布功能。
优选地,所述画布功能包括:显示XY坐标系、画线条、勾画进度条、书写对话框。
本发明的有益效果如下:
本发明提供的实时更新采集图像数据的绘图系统和方法利用封装好的ChartCtrl类实时更新采集图像数据,实时进行数据分析。
附图说明
下面结合附图对本发明的具体实施方式作进一步详细的说明。
图1为本发明实施例配置数据路径。
图2为本发明实施例中图像分析结果。
图3为本发明实施例中另一图像分析结果。
具体实施方式
为了更清楚地说明本发明,下面结合优选实施例对本发明做进一步的说明。本领域技术人员应当理解,下面所具体描述的内容是说明性的而非限制性的,不应以此限制本发明的保护范围。
本发明利用封装好的ChartCtrl类实时更新采集图像数据,实时进行数据分析。
本发明提供一种实时更新采集图像数据的绘图系统,该系统包括:封装有画布功能的ChartCtrl模块;对画布中的图像进行实时采集得到图像数据的图像采集模块;以及读取所述图像数据并进行分析的图像分析模块。ChartCtrl模块的具体封装以及图像数据的采集与分析过程如下:
1.封装ChartCtrl类
将显示XY坐标系、画线条、勾画进度条、书写对话框等功能都封装仅ChartCtrl类中,目的是将所有与画布有关的功能全都打包进来,用时自取即可,方便快捷。
在Windows中,绘图一般在视图窗口客户区进行,使用设备上下文类CDC中各种绘图函数。
1)构建坐标系
可以使用CDC类的成员函数GetMapMode和SetMapMode来获得和设置当前的映射模式:
int GetMapMode()const;//返回当前的映射模式
virtual int SetMapMode(int nMapMode);//返回先前的映射模式
除了两种自定义映射模式外,x方向都是向右,y方向也只有MM_TEXT的向下,其余的都是向上,与数学上一致。除了MM_ANISOTROPIC外,其他所有映射模式的x与y方向的单位都是相同的。所有映射模式的逻辑坐标的原点(0,0)最初都是在窗口的左上角,但在CScrollView的派生类中,MFC会随用户滚动文档而自动调整逻辑原点的相对位置(改变视点的原点属性)。
2)画像素点
为了使应用程序能够正确工作,除MM_TEXT映射模式外,其他映射模式都需要进行单位转换。下面是逻辑单位到设备单位(如像素)的转换公式:
x比例因子=视口宽度/窗口宽度
y比例因子=视口高度/窗口高度
设备x=逻辑x*x比例因子+x原点偏移量
设备y=逻辑y*y比例因子+y原点偏移量
3)画线状图
当前位置:设置当前位置为(x,y)或point:
CPoint MoveTo(int x,int y);或CPoint MoveTo(POINT point);
画线:使用DC中的笔从当前位置画线到点(x,y)或point:(若成功返回非0值):
BOOL LineTo(int x,int y);或BOOL LineTo(POINT point);
画折线:使用DC中的笔,依次将点数组lpPoints中的nCount(≥2)个点连接起来,形成一条折线:
BOOL Polyline(LPPOINT lpPoints,int nCount);
画多边形:似画折线,但还会将最后的点与第一个点相连形成多边形,并用DC中的刷填充其内部区域:
BOOL Polygon(LPPOINT lpPoints,int nCount);
画矩形:使用DC中的笔画左上角为(x1,y1)、右下角为(x2,y2)或范围为*lpRect的矩形的边线,并用DC中的刷填充其内部区域:
BOOL Rectangle(int x1,int y1,int x2,int y2);或BOOL Rectangle(LPCRECTlpRect);
有时需要根据用户给定的两个任意点来重新构造左上角和右下角的点,rect=CRect(min(p0.x,point.x),min(p0.y,point.y),max(p0.x,point.x),max(p0.y,point.y));
画圆角矩形:使用DC中的笔画左上角为(x1,y1)、右下角为(x2,y2);或范围为*lpRect的矩形的边线,并用宽x3或point.x高y3或point.y矩形的内接椭圆倒角,再用DC中的刷填充其内部区域:
4)画填充图
画填充矩形:用指定的刷pBrush画一个以lpRect为区域的填充矩形,无边线,填充区域包括矩形的左边界和上边界,但不包括矩形的右边界和下边界:
void FillRect(LPCRECT lpRect,CBrush*pBrush);
画单色填充矩形:似FillRect,但只能填充单色,不能填充条纹和图案:
void FillSolidRect(LPCRECT lpRect,COLORREF clr);
void FillSolidRect(int x,int y,int cx,int cy,COLORREF clr);
画饼图(扇形):参数含义同Arc,但将起点和终点都与外接矩形的中心相连接,形成一个扇形区域,用DC中的刷填充整个扇形区域,无另外的边线:
BOOL Pie(int x1,int y1,int x2,int y2,int x3,int y3,int x4,int y4);
BOOL Pie(LPCRECT lpRect,POINT ptStart,POINT ptEnd);
画拖动的矩形:先擦除线宽为sizeLast、填充刷为pBrushLast的原矩形lpRectLast,然后再以线宽为size、填充刷为pBrush画新矩形lpRectLast。矩形的边框用灰色的点虚线画,缺省的填充刷为空刷:
void DrawDragRect(LPCRECT lpRect,SIZE size,LPCRECT lpRectLast,SIZEsizeLast,CBrush*pBrush=NULL,CBrush*pBrushLast=NULL);
5)在控件上绘图
可以在对话框资源中放置图片控件,并对其类型属性选Frame。
可在对话框的绘图消息响应函数OnPaint或其他函数中,用CWnd类的函数GetDlgItem:
CWnd*GetDlgItem(int nID)const;
来获得图片控件的窗口对象,再用函数GetDC:
CDC*GetDC();
由窗口对象得到DC,然后就可以用该DC在控件中画图。如(在ID为IDC_HUESAT的图片控件上画调色板)。
2.实时图像分析
图像分析是以采集的图像数据为基础,而图像采集是实时进行的,为了能够在画布中实时显示分析结果,本发明的系统还包括用以在画布中实时显示所述图像分析模块的分析结果的分析结果显示模块。系统预留一个读数据接口,在此接口中实时进行数据分析,对采集到的图像数据即复数信号进行分析,成功分离信号实部和虚部,将读取数据和分析数据串联进行,大大缩短了计算时间,提高了运行效率。
进一步的,本发明系统还包括用以保存所述图像数据的存储模块。如图1所示,用户可在Reconfig(重新配置)功能中根据自己需求从存储模块中选择一组采集的图像数据,本发明系统的图像分析模块会自动捕获数据进行读取分析,后续用户可以选择不同频点、角度、高度来测试(如图2和图3所示),本系统的分析结果显示模块的显示窗口还有图像放大缩小功能,用户可以根据自己需求查看具体坐标的曲线走势及数值。
显然,本发明的上述实施例仅仅是为清楚地说明本发明所作的举例,而并非是对本发明的实施方式的限定,对于所属领域的普通技术人员来说,在上述说明的基础上还可以做出其它不同形式的变化或变动,这里无法对所有的实施方式予以穷举,凡是属于本发明的技术方案所引伸出的显而易见的变化或变动仍处于本发明的保护范围之列。
Claims (7)
1.一种实时更新采集图像数据的绘图系统,其特征在于,该系统包括:
封装有画布功能的ChartCtrl模块;
对画布中的图像进行实时采集得到图像数据的图像采集模块;以及
读取所述图像数据并进行分析的图像分析模块。
2.根据权利要求1所述的实时更新采集图像数据的绘图系统,其特征在于,所述系统还包括用以在画布中实时显示所述图像分析模块的分析结果的分析结果显示模块。
3.根据权利要求1所述的实时更新采集图像数据的绘图系统,其特征在于,所述系统还包括用以保存所述图像数据的存储模块。
4.根据权利要求1所述的实时更新采集图像数据的绘图系统,其特征在于,所述画布功能包括:显示XY坐标系、画线条、勾画进度条、书写对话框。
5.一种实时更新采集图像数据的绘图方法,其特征在于,该方法采用封装好的ChartCtrl实时更新采集图像数据,并实时对所述图像数据进行分析。
6.根据权利要求5所述的实时更新采集图像数据的绘图方法,其特征在于,所述封装好的ChartCtrl中封装有画布功能。
7.根据权利要求6所述的实时更新采集图像数据的绘图方法,其特征在于,所述画布功能包括:显示XY坐标系、画线条、勾画进度条、书写对话框。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810926840.9A CN108958877A (zh) | 2018-08-15 | 2018-08-15 | 一种实时更新采集图像数据的绘图系统和方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810926840.9A CN108958877A (zh) | 2018-08-15 | 2018-08-15 | 一种实时更新采集图像数据的绘图系统和方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN108958877A true CN108958877A (zh) | 2018-12-07 |
Family
ID=64470109
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810926840.9A Pending CN108958877A (zh) | 2018-08-15 | 2018-08-15 | 一种实时更新采集图像数据的绘图系统和方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108958877A (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103019682A (zh) * | 2012-11-20 | 2013-04-03 | 清华大学 | 一种通过自定义图形组合在svg中展示数据的方法 |
CN103034502A (zh) * | 2012-12-26 | 2013-04-10 | 江苏西电南自智能电力设备有限公司 | 一种在svg界面中嵌入动态实时监测图表的方法 |
CN107729006A (zh) * | 2017-10-30 | 2018-02-23 | 南京唯实科技有限公司 | 一种基于pc端的页面信息智能采集工具及方法 |
CN108241480A (zh) * | 2018-01-24 | 2018-07-03 | 上海哇嗨网络科技有限公司 | 显示内容的批注方法、显示客户端及投屏客户端 |
-
2018
- 2018-08-15 CN CN201810926840.9A patent/CN108958877A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103019682A (zh) * | 2012-11-20 | 2013-04-03 | 清华大学 | 一种通过自定义图形组合在svg中展示数据的方法 |
CN103034502A (zh) * | 2012-12-26 | 2013-04-10 | 江苏西电南自智能电力设备有限公司 | 一种在svg界面中嵌入动态实时监测图表的方法 |
CN107729006A (zh) * | 2017-10-30 | 2018-02-23 | 南京唯实科技有限公司 | 一种基于pc端的页面信息智能采集工具及方法 |
CN108241480A (zh) * | 2018-01-24 | 2018-07-03 | 上海哇嗨网络科技有限公司 | 显示内容的批注方法、显示客户端及投屏客户端 |
Non-Patent Citations (3)
Title |
---|
张庆华等: "基于Windows数据连续采集实时分析的实现及应用", 《南京理工大学学报(自然科学版》 * |
管理员: "High-speed Charting Control--MFC绘制图表(折线图、饼图、柱形图)控件", 《程序园》 * |
羊昌燕等: "总线数据采集系统事后分析处理软件设计与实现", 《测控技术》 * |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106909875B (zh) | 人脸脸型分类方法和系统 | |
CN105303189B (zh) | 一种用于检测预定区域中特定标识图像的方法及装置 | |
CN102970456B (zh) | 图像形成方法及图像形成装置 | |
CN106022424B (zh) | 生成具有动态效果的二维码图片的方法及装置 | |
CN104835164B (zh) | 一种双目摄像头深度图像的处理方法及装置 | |
CN101882327B (zh) | 信息处理装置及处理信息的方法 | |
CN109858452A (zh) | 建筑图纸自动比对方法和装置 | |
CN106023271B (zh) | 一种靶标中心坐标提取方法及装置 | |
CN102289823A (zh) | 获取显示设备上图形面积的方法和装置 | |
US20200111247A1 (en) | Graphics processing systems | |
CN112184804B (zh) | 大体积工件高密度焊点定位方法、装置、存储介质及终端 | |
CN102063496A (zh) | 空间数据化简方法及装置 | |
CN101271588B (zh) | 可重建几何阴影图方法 | |
CN108958877A (zh) | 一种实时更新采集图像数据的绘图系统和方法 | |
CN106371614A (zh) | 手势识别的优化方法和装置 | |
CN101901590B (zh) | 用于抗锯齿的多边形栅格化的方法和系统 | |
US6215501B1 (en) | Method and filling a polygon and recording medium | |
DE112011105126T5 (de) | Texturkartierungsvorrichtung | |
JP3392628B2 (ja) | 輪郭抽出方法及びシステム | |
CN104462724A (zh) | 煤矿巷道模拟图计算机绘制方法 | |
CA2023832C (en) | Method and apparatus for filing contours in digital typefaces | |
CN105403747B (zh) | 多模板同步测试方法及示波器 | |
CN102542589B (zh) | 一种波形编辑方法及装置 | |
KR20210136502A (ko) | Rgb-d 데이터와 딥러닝을 이용한 3d객체영역분할 방법과 그 시스템 | |
CN105793896B (zh) | 图像输出装置和渲染图像的方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20181207 |