标题:C#如何实现动态画图,来讨论
取消只看楼主
perfume
Rank: 1
等 级:新手上路
帖 子:51
专家分:7
注 册:2007-7-24
结帖率:25%
已结贴  问题点数:20 回复次数:7 
C#如何实现动态画图,来讨论
C#如何实现动态画图,来讨论
搜索更多相关主题的帖子: 画图 如何 动态 
2011-01-17 21:11
perfume
Rank: 1
等 级:新手上路
帖 子:51
专家分:7
注 册:2007-7-24
得分:0 
简单说:
我想实现火焰切割的动态仿真。
首先根据加工零件绘制加工图形,然后根据返回数据动态仿真
如图


现在我是这么做的。
在定时器里panel1.refrsh();
private void panel1_Paint(object sender, PaintEventArgs e)
        {
            Graphics g = e.Graphics;
            g.DrawImage(bmp, 20, 20);            
            p2.X = (int)((Parameter.GInfo.X - drawImage.xMin) * drawImage.ScaleFactor + 20);
            p2.Y = (int)(drawImage.Height - (Parameter.GInfo.Y - drawImage.yMin) * drawImage.ScaleFactor + 20);
            Graphics gg = Graphics.FromImage(bmpp);
            gg.DrawLine(drawPen, p1.X, p1.Y, p2.X, p2.Y);
            g.DrawEllipse(pennn, Convert.ToInt32(p2.X - 3), Convert.ToInt32(p2.Y - 3), 6, 6);
            g.FillEllipse(new SolidBrush(Color.Chartreuse), Convert.ToInt32(p2.X - 3),
                Convert.ToInt32(p2.Y - 3), 6, 6);            
            p1 = p2;
            g.DrawImage(bmpp, 0, 0);            
        }

这样会一直闪。
应该怎么做,详细点,别光说个双缓冲区完了。具体怎么实现,panel怎么不能setstyle.

2011-01-17 21:16
perfume
Rank: 1
等 级:新手上路
帖 子:51
专家分:7
注 册:2007-7-24
得分:0 
图片看不大清楚,主要是模拟火焰的圆不知道怎么解决?

2011-01-17 21:18
perfume
Rank: 1
等 级:新手上路
帖 子:51
专家分:7
注 册:2007-7-24
得分:0 
怎么每人搭理?

2011-01-18 09:44
perfume
Rank: 1
等 级:新手上路
帖 子:51
专家分:7
注 册:2007-7-24
得分:0 
回复 5楼 zhoufeng1988
效果应该一样吧,还是会闪烁!

2011-01-18 14:44
perfume
Rank: 1
等 级:新手上路
帖 子:51
专家分:7
注 册:2007-7-24
得分:0 
要不停根据最新位置,更新圆的位置。怎么擦除,

2011-01-18 14:45
perfume
Rank: 1
等 级:新手上路
帖 子:51
专家分:7
注 册:2007-7-24
得分:0 
回复 9楼 烟雨袅袅
麻烦详细点,怎么跟着走?

2011-01-18 17:39
perfume
Rank: 1
等 级:新手上路
帖 子:51
专家分:7
注 册:2007-7-24
得分:0 
用PictureBox就行,shit 耽误了老长时间,有啥这样?

2011-01-18 18:52



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-331219-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.087457 second(s), 9 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved