各种函数的使用可以参考Easex在线文档
1:使用putxixel函数绘制画布上的点
#include
#include
#include
#include
#define PI 3.14
// 1PI = 180度 2PI = 360度
int main()
{
// 初始化画布
initgraph(800,600);
//以物理坐标为基准设置逻辑坐标原点
setorigin(400, 300);
// 翻转逻辑坐标Y轴的方向当Y轴的参数为负数时实现翻转参数为x , y
setaspectratio(1, -1);
// 使用putpixel绘制点的坐标putpixel(int x,int y, colorref color);第一个参数的x的坐标,第二个参数是Ydezuobiao,第三个参数是点的颜色
putpixel(0, 0, RED);
putpixel(200, 200, YELLOW);
putpixel(200, -200, CYAN);
putpixel(-200, -200, GREEN);
putpixel(-200, 200, WHITE);
// 获取用户键盘输入的字符串
getchar();
// 关闭画布
closegraph();
return 0;
}
以上的代码绘制的点亮度较小无法准确的看清所以要使用数组的方式绘制更多的点
#include
#include
#include
#include
#define PI 3.14
// 1PI = 180度 2PI = 360度
int main()
{
// 初始化画布
initgraph(800,600);
//以物理坐标为基准设置逻辑坐标原点
setorigin(400, 300);
// 翻转逻辑坐标Y轴的方向当Y轴的参数为负数时实现翻转参数为x , y
setaspectratio(1, -1);
// 使用putpixel绘制点的坐标putpixel(int x,int y, colorref color);第一个参数的x的坐标,第二个参数是Ydezuobiao,第三个参数是点的颜色
// step1: 创建两个int 类型的变量
int x;
int y;
// step2:使用for循环和随机数的方式绘制更多的点
for (int i = 0; i < 1000; i++) {
// for循环绘制1000个随机的点控制在画布以内
// 返回1-400的随机数
x = rand() % (800 + 1) - 400;
// 返回1-300的随机数
y = rand() % (600 + 1) - 300;
putpixel(x, y, WHITE);
}
// 获取用户键盘输入的字符串
getchar();
// 关闭画布
closegraph();
return 0;
}
2:适应circle函数绘制同心圆
#include
#include
#include
#include
#define PI 3.14
// 1PI = 180度 2PI = 360度
int main()
{
// 初始化画布
initgraph(800,600);
//以物理坐标为基准设置逻辑坐标原点
setorigin(400, 300);
// 翻转逻辑坐标Y轴的方向当Y轴的参数为负数时实现翻转参数为x , y
setaspectratio(1, -1);
/*
使用void circle函数绘制同心圆
*/
for (int r = 10; r <= 300; r += 10) {
// 以坐标原点为圆形,以r为半径绘制同心圆
circle(0, 0, r);
}
// 获取用户键盘输入的字符串
getchar();
// 关闭画布
closegraph();
return 0;
}
3:使用rectangle函数绘制矩形
#include
#include
#include
#include
#define PI 3.14
// 1PI = 180度 2PI = 360度
int main()
{
// 初始化画布
initgraph(800,600);
//以物理坐标为基准设置逻辑坐标原点
setorigin(400, 300);
// 翻转逻辑坐标Y轴的方向当Y轴的参数为负数时实现翻转参数为x , y
setaspectratio(1, -1);
/*
使用recangle函数绘制椭圆形
rectangle(int letf,int top, int right,int bottom)
分别表示左上角的坐标和右下角的坐标
*/
rectangle(-200, 200, 200, -200);
// 获取用户键盘输入的字符串
getchar();
// 关闭画布
closegraph();
return 0;
}
4:使用ellipse绘制椭圆函数
#include
#include
#include
#include
#define PI 3.14
// 1PI = 180度 2PI = 360度
int main()
{
// 初始化画布
initgraph(800,600);
//以物理坐标为基准设置逻辑坐标原点
setorigin(400, 300);
// 翻转逻辑坐标Y轴的方向当Y轴的参数为负数时实现翻转参数为x , y
setaspectratio(1, -1);
/*
使用ellipse绘制椭圆形
ellipse(int left,int top,int right,int bottom)
表示的是左上角的坐标和右下角的坐标
*/
ellipse(-200, 200, 200, -200);
// 获取用户键盘输入的字符串
getchar();
// 关闭画布
closegraph();
return 0;
}
5:圆角矩形绘制函数roundrect
#include
#include
#include
#include
#define PI 3.14
// 1PI = 180度 2PI = 360度
int main()
{
// 初始化画布
initgraph(800,600);
//以物理坐标为基准设置逻辑坐标原点
setorigin(400, 300);
// 翻转逻辑坐标Y轴的方向当Y轴的参数为负数时实现翻转参数为x , y
setaspectratio(1, -1);
/*
圆角矩形的绘制函数:
void roundrect(
int left,
int top,
int right,
int bottom,
int ellipsewidth,// 构成圆角矩形的圆角的椭圆的宽度
int ellipsheight // 构成圆角矩形的圆角的椭圆的高度
);
*/
roundrect(-200, 100, 200, -100, 200, 100);
// 获取用户键盘输入的字符串
getchar();
// 关闭画布
closegraph();
return 0;
}
6:绘制扇形图形pie()函数
#include
#include
#include
#include
#define PI 3.14
// 1PI = 180度 2PI = 360度
int main()
{
// 初始化画布
initgraph(800,600);
//以物理坐标为基准设置逻辑坐标原点
setorigin(400, 300);
// 翻转逻辑坐标Y轴的方向当Y轴的参数为负数时实现翻转参数为x , y
setaspectratio(1, -1);
/*
绘制扇形的函数:
pie(
int left,
int top,
int right,
int bottom,
double stangle, // 扇形的起始角度弧度
double endangle // 扇形的中止角度弧度
);
*/
pie(-200, 100, 200, -100, 0, PI / 4);
// 获取用户键盘输入的字符串
getchar();
// 关闭画布
closegraph();
return 0;
}
7:绘制圆弧函数arc
#include
#include
#include
#include
#define PI 3.14
// 1PI = 180度 2PI = 360度
int main()
{
// 初始化画布
initgraph(800,600);
//以物理坐标为基准设置逻辑坐标原点
setorigin(400, 300);
// 翻转逻辑坐标Y轴的方向当Y轴的参数为负数时实现翻转参数为x , y
setaspectratio(1, -1);
/*
绘制圆弧的函数arc
arc(
int left,
int top,
int right,
int bottom,
double stamgle,
double endangle
);
*/
arc(-200, 100, 200, -100, 0, PI / 4);
// 获取用户键盘输入的字符串
getchar();
// 关闭画布
closegraph();
return 0;
}
8:polygon函数用于绘制多边形会自动链接首尾
#include
#include
#include
#include
#define PI 3.14
// 1PI = 180度 2PI = 360度
int main()
{
// 初始化画布
initgraph(800,600);
//以物理坐标为基准设置逻辑坐标原点
setorigin(400, 300);
// 翻转逻辑坐标Y轴的方向当Y轴的参数为负数时实现翻转参数为x , y
setaspectratio(1, -1);
/*
多边形绘制函数void polygon(const point * points, int num);
第一个参数points是一个指针指向结构point数组的首元素表示每个点的坐标
第二个参数num 表示数组中有几个元素
*/
POINT points[] = { {0,200},{200,-200},{-200,200} };
polygon((POINT*)points, 3);
/*
使用polygon函数绘制矩形知道4个点的坐标就可以绘制出一个四边形
*/
POINT points2[] = { {-200,100},{200,100},{200,-100},{-200,-100} };
polygon(points2, 4);
/*
使用polygon绘制梯形
*/
POINT points3[] = { {-100,100},{100,100},{200,-100},{-200,-100} };
polygon(points3, 4);
// 获取用户键盘输入的字符串
getchar();
// 关闭画布
closegraph();
return 0;
}
9:使用三角函数绘制5边形
#include
#include
#include
#include
#define PI 3.14
// 1PI = 180度 2PI = 360度
int main()
{
// 初始化画布
initgraph(800, 600);
setorigin(400, 300);
setaspectratio(1, -1);
// 初始角度为90度
double theta = PI / 2;
// 每一次循环角度增加72度
double delta = 2 * PI / 5;
// 表示元的半径
int r = 200;
// point类型的数组长度为5用于存储五边形的顶点
POINT points[5];
for (int i = 0; i < 5; i++) {
points[i].x = cos(theta + i * delta) * r;
points[i].y = sin(theta + i * delta) * r;
}
// 调用polygon函数绘制5边形
polygon(points, 5);
getchar();
closegraph();
return 0;
}
10:polyline函数绘制不封闭的图形
#include
#include
#include
#include
#define PI 3.14
// 1PI = 180度 2PI = 360度
int main()
{
// 初始化画布
initgraph(800, 600);
setorigin(400, 300);
setaspectratio(1, -1);
POINT points[5] = { {-400,200},{-200,-200},{0,100},{200,-200},{400,200} };
polyline(points, 5);
getchar();
closegraph();
return 0;
}