limingellipse.h
来自「自己编的程序大家下载一下很好的希望大家多多提出意见」· C头文件 代码 · 共 53 行
H
53 行
#include "math.h"
#include "windows.h"
class limingellipse
{
public:
void Midellipse(CDC* pDC,int a,int b,int xc,int yc,int m_red,int m_green,int m_blue);
};
void limingellipse::Midellipse(CDC* pDC,int a,int b,int xc,int yc,int m_red,int m_green,int m_blue)
{
int c=RGB( m_red,m_green,m_blue);
int x=0,y=b;
double d1=b*b+a*a*(0.25-b),d2;
pDC->SetPixel(x+xc,y+yc,c);
pDC->SetPixel(-x+xc,y+yc,c);
pDC->SetPixel(x+xc,-y+yc,c);
pDC->SetPixel(-x+xc,-y+yc,c);
while(b*b*(x+1)<a*a*(y-0.5))
{
if(d1>=0)
{
d1+=b*b*(2*x+3)+a*a*(-2*y+2);
y--;
}
else
{
d1+=b*b*(2*x+3);
}
x++;
pDC->SetPixel(x+xc,y+yc,c);
pDC->SetPixel(-x+xc,y+yc,c);
pDC->SetPixel(x+xc,-y+yc,c);
pDC->SetPixel(-x+xc,-y+yc,c);
}
d2=sqrt(b*(x+0.5))+a*(y-1)-a*b;
while(y>0)
{
if(d2>=0)
{
d2+=a*a*(-2*y+3);
}
else
{
d2+=b*b*(2*x+2)+a*a*(-2*y+3);
x++;
}
y--;
pDC->SetPixel(x+xc,y+yc,c);
pDC->SetPixel(-x+xc,y+yc,c);
pDC->SetPixel(x+xc,-y+yc,c);
pDC->SetPixel(-x+xc,-y+yc,c);
}
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?