QQ登录

只需一步,快速开始

上位机MFC仿音频波曲线绘制源代码

[ 复制链接 ]

上位机MFC仿音频波曲线绘制源代码

上位机MFC仿音频波曲线绘制源代码

效果如上图。
主要通过GDI绘图函数实现音频波形的绘制功能。
主要代码如下。
例程通过第30ms刷新界面,
进而调用下面代码 重绘界面实现波形绘制。
  1. #define  COLS 7450
  2. void CTestDrawCurve_26View::OnDraw(CDC* pDC)
  3. {
  4.         CTestDrawCurve_26Doc* pDoc = GetDocument();
  5.         ASSERT_VALID(pDoc);
  6.        
  7.         CRect rc;
  8.         int curveHigh = ((m_rcSize.cy)*2/3-256);        //区域的高度为256
  9.         SetRect(&rc,0,curveHigh,m_rcSize.cx,m_rcSize.cy*2/3);

  10.         CDC MemDC;
  11.         MemDC.CreateCompatibleDC(pDC);


  12.         CBitmap bitmap,*pOldBitmap;
  13.         CPen *pOldPen;
  14.         bitmap.CreateCompatibleBitmap(pDC,rc.right,rc.bottom);

  15.         pOldBitmap = MemDC.SelectObject(&bitmap);
  16.         pOldPen = MemDC.SelectObject(&m_linePen);

  17.         MemDC.FillSolidRect(&rc,RGB(39,194,156));

  18.         MemDC.SetViewportOrg(0,(rc.bottom));
  19.         //设置x,y

  20.         MemDC.TextOut(0,-curveHigh,"255");
  21.        
  22.         MemDC.MoveTo(0,-curveHigh);
  23.         MemDC.LineTo(rc.right,-curveHigh);

  24.         CPoint *p = new CPoint[COLS];
  25.         int mod = m_rcSize.cy/3;
  26.        
  27.         p[0].x = 0;
  28.         p[0].y = -255;
  29.         for ( int i =1 ;i < COLS;i++)
  30.         {
  31.                 p[i].x = i*2;
  32.                 p[i].y = -rand()%curveHigh;
  33.         //        MemDC.SetPixel(p[i],RGB(255,0,0));
  34.         }

  35.         MemDC.Polyline(p,COLS);
  36.        
  37.         MemDC.SetViewportOrg(0,0);


  38.         pDC->BitBlt(rc.left,rc.top,rc.right,rc.bottom,&MemDC,rc.left,rc.top,SRCCOPY);
  39.        
  40.         pDC->TextOut(m_rcSize.cx,m_rcSize.cy,_T("(像素)"));
  41.         MemDC.SelectObject(pOldBitmap);
  42.         MemDC.SelectObject(pOldPen);

  43.         DeleteDC(MemDC);
  44.        
  45.         delete p;
  46.        
  47.        
  48. }
复制代码
可以下载源代码参考学习:
请点击此处下载

请先注册会员后在进行下载

已注册会员,请先登录后下载

文件名称:上位机MFC仿音频波曲线绘制源代码.rar 
文件大小:36.98 KB  售价:1金币
下载权限: 不限 以上或 VIP会员   [购买捐助会员]   [充值积分]   有问题联系我


  

halcon从自学到接项目视频教程,另外再赠送全网最全资源  

  

欢迎围观我录制的一套halcon自学视频教程(进入)


  

如果您认可,可联系功能定制!

  

如果您着急,充值会员可直接联系发您资料!

  

QQ联系我

微信扫扫联系我

  

  

上位机VC MFC程序开发精典实例大全源码与视频讲解配套下载408例

  

经历1年的编程与录制点击进入查看



回复

使用道具 举报

点击查看
快速回复 返回列表 客服中心 搜索