c#实现巴恩斯利蕨,运行出问题,求助解决

sdauxxrs_cx 2017-11-19 11:00:07
代码如下,一个菜单栏一个picturebox控件,一运行就卡死,显示是Bitmap myBitmap = new Bitmap(pictureBox1.Width, pictureBox1出了问题,但是不完全知道怎么改啊哭
private void showToolStripMenuItem_Click(object sender, EventArgs e)
{
int r;
double x, y;
x = 0.0; y = 0.0;
Random ra = new Random(0);//种子

for (int i = 0; i < 50000; i++)
{
Random ran = new Random();
r = ran.Next()%100;//随机数

if (r< 0)
{
x = 0;
y = 0.16 * y;
}
else if (r<8)
{
x = 0.2 * x - 0.26 * y;
y = 0.23 * x + 0.22 * y + 1.6;
}
else if (r<15)
{
x = -0.15 * x + 0.28 * y;
y = 0.26 * x + 0.24 * y + 0.44;
}
else
{
x = 0.85 * x + 0.04 * y;
y = -0.04 * x + 0.85 * y + 1.6;
}
Bitmap myBitmap = new Bitmap(pictureBox1.Width, pictureBox1.Height);

myBitmap.SetPixel((int)((x / 10)), (int)((y / 10 - 0.3)), Color.Green);

pictureBox1.Image = myBitmap;
}

}
...全文
191 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
引用 2 楼 sdauxxrs_cx 的回复:
感谢大神!!!
修改后也只能在 0,0点画绿色,你的实现公式一定在什么地方有问题。
sdauxxrs_cx 2017-11-19
  • 打赏
  • 举报
回复
感谢大神!!!
xuzuning 2017-11-19
  • 打赏
  • 举报
回复
Random ran = new Random(); Bitmap myBitmap = new Bitmap(pictureBox1.Width, pictureBox1.Height); 移到循环前面 pictureBox1.Image = myBitmap; 移到循环后面

110,500

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧