2009-11-21 190 views
1

在我的应用程序中,我想使用Windows创建图形方法绘制多边形,然后通过允许用户选择多边形的点并允许重新定位它们来编辑多边形。C#更快的绘制矢量图形

我使用moue move事件来获取点的新位置,以获取要移动的点的新坐标,并使用Paint事件重新绘制多边形。该应用程序正在工作,但当一个点被移动时,移动不平稳。这可能是由于在移动点时大量的鼠标移动和绘画事件触发。

我不知道天气鼠标移动或绘画事件的性能障碍。

任何人都可以提出一个建议,如何改善?

回答

0

看看c#中的双缓冲。这可以大大加速事情。

+1

-1。双缓冲提供没有速度增加,只是防止闪烁。事实上,作为绘制过程的额外开销,更多的CPU周期用于绘制相同的东西(尽管没有可怕的闪烁)。 – 2011-12-07 05:22:09

0

从我的Win32 expirience(不是.NET)开始,最快的矢量图形是Metafile。我不知道C#System.Drawing.Imaging.Metafile是否与Win32一样快。可能与视频2D硬件一样快。