【发布时间】:2012-04-10 14:59:11
【问题描述】:
我正在开发一个图形计算器应用程序,当然,该应用程序的主要功能是显示图形。
现在,这就是我的绘图算法的工作原理:我将绘图画布划分为N 间隔(其中N 定义了应用程序的设置,默认值约为700)。对于每个区间,我评估两端的函数,并在两点之间画一条线。
以下是我发现此方法的缺点:
- 图形的精度不是很好(例如函数
sin(tan(x))) - 间隔数越多,渲染越慢(例如,N 大于 1000)。此外,缩放和导航控件也会受到影响。
那么有没有更好的方法来绘制图表?
我正在使用 C# (WPF) 进行编程,但我认为这无关紧要,因为我正在寻找一种算法。
【问题讨论】:
-
慢的部分是什么?计算还是在屏幕上放一个像素?将像素放在屏幕上可能会非常慢,如果这是问题,请查看 C# 的 fastbitmap。