vc画一条正弦曲线,错在哪?解决方法
vc画一条正弦曲线,错在哪?
CDC*pDC=GetDC();
UpdateData(TRUE);
int y;
int start=(int)40*m_x1;
int end =(int)40*m_x2;
for(int i = start;i<end;i++)
{
double or= 1/2.0*pi*i/40.0;
y=sin(or)*200;
pDC->MoveTo(start,y);
pDC->LineTo(end,y);
}
vc画一条正弦曲线,错在哪?请各位帮帮忙!
------解决方案--------------------
CDC*pDC=GetDC();
UpdateData(TRUE);
int y;
int start=(int)40*m_x1;
int end =(int)40*m_x2;
for(int i = start;i<end;i++)
{
double or= 1/2.0*pi*i/40.0;
y=sin(or)*200;
pDC->MoveTo(start,y);
pDC->LineTo(end,y);
}
vc画一条正弦曲线,错在哪?请各位帮帮忙!
------解决方案--------------------
- C/C++ code
int start=(int)40*m_x1; int end =(int)40*m_x2; int x0 = start; int y0 = sin(1/2.0*pi*x0/40.0)*200; pDC->MoveTo(x0,y0); for(int x = start + 1;i<end;i++) { y=sin(1/2.0*pi*x/40.0)*200; pDC->LineTo(x,y); }
------解决方案--------------------
最好在OnPaint里面画,不然当时即便画出来了,一移动窗口或者改变窗口大小等。。引起重绘,那么你画的东西都不见了
------解决方案--------------------
你确定y用int定义?不用double