当前位置: 代码迷 >> .NET Framework >> WPF怎么快速的画大量图形,比如10万条线
  详细解决方案

WPF怎么快速的画大量图形,比如10万条线

热度:239   发布时间:2016-05-01 23:23:05.0
WPF如何快速的画大量图形,比如10万条线?
比如画10万条线,原来用GDI画图如下,先画到一个图片上,速度比较快。

     
        Bitmap m_bmp;
        Graphics g;
        Random ran = new Random(System.DateTime.Now.Millisecond);
        private void button1_Click(object sender, EventArgs e)
        {
            long cur = System.DateTime.Now.Ticks;

            m_bmp = new Bitmap(400, 300);
             g = Graphics.FromImage(m_bmp);
            Pen p = new Pen(Color.Red,1);
     
            for (int i = 0; i < 100000;i++ )
            {
                double x = ran.NextDouble() * 400;
                double y = ran.NextDouble() * 300;
                g.DrawLine(p, new Point((int)x, (int)y), new Point(100, 100));

            }
            this.CreateGraphics().DrawImage(m_bmp,0,0);
            double time2 = (System.DateTime.Now.Ticks - cur) / (10000d * 1000);

        }


现在使用了WPF,尝试了各种办法, 比如各种Geometry,DrawingVisual什么的,但是它们在所画线条个数达到10W的时候,程序已经卡死了。实在是没有思路,求各位大大给个WPF下对应的做法,目标就是随便画10万条线。小弟谢谢大家了!
------解决思路----------------------
既然你只要画在位图上就感觉很知足,为什么在wpf中也还是copy这段代码呢?干么要重写呢?
------解决思路----------------------
WPF里path是矢量图,占用资源比较多吧。
  相关解决方案