当前位置: 代码迷 >> QT开发 >> 用QPainter绘制波形,怎么控制显示范围
  详细解决方案

用QPainter绘制波形,怎么控制显示范围

热度:49   发布时间:2016-04-25 03:26:47.0
用QPainter绘制波形,如何控制显示范围?
本帖最后由 accsoar 于 2014-03-04 11:15:28 编辑
在做实时波形显示的时候,我是用QPainter::drawPolyline(QPointF*, int)绘制的波形,也实现了在Y方向上各种scale下的显示。但是有个问题,就是希望scale比较大的时候,波形在y方向上有个显示范围(即一定范围内截止,比如仅显示高度300个像素内的波形),如下图显示,(因为有好几个波形通道,不希望一个通道把另外的覆盖)。如何实现这种效果呢,超过范围的部分不显示出来。



我知道一种方式,让每个通道绘制在单独的一个QPixmap上(比如300像素高的长条pixmap),这样多个通道将互不影响,但是这种方式对我的改动太大了……,我是直接绘制在一个大的pixmap上的,希望通过绘制每个波形通道时设置一下QPainter来限定范围。
------解决方案--------------------
...我引用的是QWT的库,里面有些东西可以直接用。也是类似处理的。