解决方案 »

  1.   

    研究一下MFC嵌入WPF,用WPF的曲线更快一点。或者研究一下MFC嵌入WebKit,然后用JavaScript的Highcharts。
      

  2.   

    谢谢回复,后者听起来好复杂,表示WPF、WebKit、JavaScript都不会!我看看吧~
      

  3.   

    只绘制第 n * 10 个点,其中,n 是放大倍数。
    这样可以吧规模缩小 n 倍。
    再根据可视范围裁剪,基本上就 ok 了。
      

  4.   

    GDI+
    做过类似的,以像素为点的,用二次缓冲
      

  5.   

    。我的需求是当滑块滑动时,曲线能实时在横轴上进行缩放,而不是停止后再缩放。是整个曲线,并非某个区域,相当于横轴坐标都变大或变小同样倍数,然后重绘曲线。(我的问题是重绘时,数据量大导致很卡)
    用GDI+真的能够完成我上面的么?麻烦指点~
      

  6.   

    。我的需求是当滑块滑动时,曲线能实时在横轴上进行缩放,而不是停止后再缩放。是整个曲线,并非某个区域,相当于横轴坐标都变大或变小同样倍数,然后重绘曲线。(我的问题是重绘时,数据量大导致很卡)
    用GDI+真的能够完成我上面的么?麻烦指点~
    那就要看你用几万个点有什么意义了?
    我画的线段全部都是用点组成的,也就200多个点,线段也很平滑,最多的,我看到的线段用点也就是每一个像素是一个点,
    至于缩小放大,你只要指定每一个点的横坐标是相对于窗口宽度的位置就行了,比如A点在窗口宽度的1/3处,也就是(窗口宽度)/3的横坐标,即便是放大窗口和缩小窗口也会跟着改变,你这么多点,就音for循环进行给值,绘图你可以百度样条曲线:指给定一组控制点而得到一条曲线,其实只要用几百个点就很OK了,