求助,关于绘图里的问题

小猪飞剑 2012-04-24 01:34:46
贴代码
Pen pen = new Pen(Color.Red, 2);
int x0=270;
int y0=250;
int x=25;
int y=25;
int x1,x2,y1,y2;

for (int i = -9; i < 10; i++)
{
x1= x0 + (i * x);
y1=y0 -( y*(A * i + B ));
x2=x0 + ((i + 1)*x);
y2=y0 - ((A * (i + 1) + B)*y) ;

if (y1 < 50)break;
if(y1 > 450)break ;
if( y2 < 50)break ;
if (y2 > 450) break;

g.DrawLine(pen,x1,y1,x2,y2);
}

A,B为输入的数字。
但是A,B为负数或者B为0的时候是不会画图的
求解决
...全文
100 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
小猪飞剑 2012-04-24
  • 打赏
  • 举报
回复
谢谢啊。。。发现问题了。。应该用continue不应该用break。
谢谢提醒
bdmh 2012-04-24
  • 打赏
  • 举报
回复
自己知道问题了,那就是你计算公式有问题,负数或零可能导致DrawLine的参数x1,y1,x2,y2,之间没有划线长度,或者坐标不在绘图区域内,比如窗体left从0开始,你得到一个 -1,当然找不到了

111,126

社区成员

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

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

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