C语言easyx库绘图
- 使用easyx 绘制一个哆啦A梦的头像
- 第一步:分析
- 第二步骤: 创建画布
- 第三步骤:绘制头部
- 第四步:绘制眼睛
- 第五步:绘制眼珠子
- 第六步:绘制 高光
- 第七步:鼻子
- 第八步:绘制嘴巴
- 第九步:绘制胡须
- 第十步:源码分享
- 效果图
使用easyx 绘制一个哆啦A梦的头像
绘制一个哆啦A梦的案例
核心就是画出椭圆
画出圆形
画出 直线
加上每个相关点的坐标
第一步:分析
头部 是两个椭圆一个蓝色 一个白色 使用 ellipse函数
眼睛 是两个椭圆 眼珠子是两个圆
嘴巴十个弧形
鼻子 圆形
还有线条
胡须可以直线 也可以弧形 无所谓
第二步骤: 创建画布
#include <easyx.h>
#include <stdio.h>
int main() {//创建画布initgraph(1024, 1024);//设置背景色-白色setbkcolor(WHITE);//清楚initgraph的默认黑色背景cleardevice();//关闭前拦截一下 getchar();//关闭画布closegraph();return 0;
}
此时就会生成白色的画布
第三步骤:绘制头部
找到一个矩形把头包裹进去 找到左上角 和右下角的点
绘制椭圆:
内部填充蓝色
线条为实现 宽度为4
//绘制头部
//设置绘制的线条颜色
setlinecolor(BLACK);
//设置线条的样式 粗细
setlinestyle(PS_SOLID, 4);//设置填充的颜色
setfillcolor(BLUE);//绘制椭圆
fillellipse(118, 125, 990, 931);
在绘制白色的椭圆
//绘制白色的椭圆setfillcolor(WHITE);fillellipse(189, 271, 919, 931);
第四步:绘制眼睛
//绘制眼睛fillellipse(375, 170, 555, 420);fillellipse(555, 170, 735, 420);
第五步:绘制眼珠子
//绘制眼珠子setfillcolor(BLACK); //眼珠子用黑色填充solidcircle(484, 333, 25);//不需要描边 只需要填充 也就是setlinestyle 和setlinecolor 无效solidcircle(617, 333, 25);//不需要描边 只需要填充 也就是setlinestyle 和setlinecolor 无效
第六步:绘制 高光
//绘制高光
setfillcolor(WHITE);//白色的高光
solidcircle(484, 333, 10);
solidcircle(617, 333, 10);
第七步:鼻子
setfillcolor(RED);
fillcircle(554, 420, 35);
line(554, 460, 554, 828);
第八步:绘制嘴巴
//绘制嘴巴//需要借助 画弧线的功能//360度 =2π 要几度 就去算几个π//例如 90度 360的四分之一 2π的四分之一 就是 0.5π π/2//逆时针旋转 从开始弧度 到结束的弧度 画弧线arc(320, 510, 789, 827, PI, 2 * PI);//矩形的左上角 右下角 开始弧度 结束弧度
第九步:绘制胡须
//绘制胡须//画线段 表示胡须 开始和结束点line(125, 313, 296, 410);line(83, 444, 270, 474);line(83, 595, 262, 527);line(819, 414, 990, 320);line(845, 478, 1029, 448);line(853, 542, 1029, 660);
第十步:源码分享
#include <easyx.h>
#include <stdio.h>
//计算弧度
#define PI 3.14
int main() {//创建画布initgraph(1024, 1024);//设置背景色-白色setbkcolor(WHITE);//清楚initgraph的默认黑色背景cleardevice();//绘制头部//设置绘制的线条颜色setlinecolor(BLACK);//设置线条的样式 粗细setlinestyle(PS_SOLID, 4);//设置填充的颜色setfillcolor(BLUE);//绘制椭圆fillellipse(118, 125, 990, 931);//绘制白色的椭圆setfillcolor(WHITE);fillellipse(189, 271, 919, 931);//绘制眼睛fillellipse(375, 170, 555, 420);fillellipse(555, 170, 735, 420);//绘制眼珠子setfillcolor(BLACK); //眼珠子用黑色填充solidcircle(484, 333, 25);//不需要描边 只需要填充 也就是setlinestyle 和setlinecolor 无效solidcircle(617, 333, 25);//不需要描边 只需要填充 也就是setlinestyle 和setlinecolor 无效//绘制高光setfillcolor(WHITE);//白色的高光solidcircle(484, 333, 10);solidcircle(617, 333, 10);//鼻子setfillcolor(RED);fillcircle(554, 420, 35);line(554, 460, 554, 828);//绘制嘴巴//需要借助 画弧线的功能//360度 =2π 要几度 就去算几个π//例如 90度 360的四分之一 2π的四分之一 就是 0.5π π/2//逆时针旋转 从开始弧度 到结束的弧度 画弧线arc(320, 510, 789, 827, PI, 2 * PI);//矩形的左上角 右下角 开始弧度 结束弧度//绘制胡须//画线段 表示胡须 开始和结束点line(125, 313, 296, 410);line(83, 444, 270, 474);line(83, 595, 262, 527);line(819, 414, 990, 320);line(845, 478, 1029, 448);line(853, 542, 1029, 660);//关闭前拦截一下 getchar();//关闭画布closegraph();return 0;
}