qwt 在重新缩放或缩放光标后绘制移动曲线
Posted
技术标签:
【中文标题】qwt 在重新缩放或缩放光标后绘制移动曲线【英文标题】:qwt plot move curve after rescale or zoom on cursor 【发布时间】:2016-10-14 15:25:21 【问题描述】:我在绘图中有一条经典曲线,我想通过鼠标滚轮事件在光标位置设置缩放。 为此,我想:
设置重新缩放:QwtPlotMagnifier::rescale(factor); (这已经完成并且有效)
将绘图的中心设置为光标的位置(我可以在这部分、文档、*** 或其他网站上找到任何内容)
我不知道是否有其他方法可以继续,如果您有任何建议..
谢谢!
【问题讨论】:
【参考方案1】:所以我找到了一个完美的解决方案,我终于设置了一个像谷歌地图缩放一样的缩放。
解决办法是:
在绘图放大镜中捕捉小部件轮事件 在绘图放大镜中创建私有方法rescale_on_cursor(double factor, int x_cursor, int y_cursor, QSize parent_size)
在小部件轮事件中,您将调用您的方法。该因子将是 0,9 或 1,1(取消缩放或缩放),(x, y) 光标位置和 QSize 父窗口小部件的大小。
主要思想是派生 qwt_plotMagnifier::rescale() 并修改定义新比例的步骤,您将设置比例的百分比,该百分比等于光标位置的百分比。
如果 x_cursor 等于父尺寸的 20%,您将设置 AxisScale(20%(zoom), 80%(zoom))。
【讨论】:
以上是关于qwt 在重新缩放或缩放光标后绘制移动曲线的主要内容,如果未能解决你的问题,请参考以下文章