QCPItemTracer的褪色效果

时间:2017-03-25 11:27:04

标签: qt

我可以在绘图时使用QCPItemTracer跟踪数据上的特定点。如何实现淡出效果?也就是说,当绘制下一个点时,最后n个点缓慢淡出。 Qt是否提供这样的功能?

1 个答案:

答案 0 :(得分:1)

我不熟悉这类QCustomPlot,但应该很容易实现你对自己的要求。您只需要跟踪最后n点。在绘图方面,这通常被称为示波器类型持久性

淡出效果通常是通过逐渐更改要影响的项目的Alpha通道或颜色值来实现的。第一个相对容易,但需要alpha支持(QCustomPlot支持它)和decreases performance绘图工具。第二个要求您计算一个渐变,该渐变以该点最初绘制的颜色开始,并一直向上/向下移动到您为绘图选择的任何背景颜色。渐变步骤可以直接从n得出。

  1. 对于每个n+1点,只需在此之前迭代n
  2. 对于每个点减少alpha或更改颜色
  3. 我认为您想要的淡出效果也需要根据年龄在所有点之间分配不均,点n(最年轻)受影响最小,点0(最老的)受这种淡出效果的影响最大(从左到右的点数增加):

    enter image description here