📅  最后修改于: 2023-12-03 15:37:34.966000             🧑  作者: Mango
在 C++ 图形中,可以使用 graphics.h
头文件中提供的函数来绘制图形。本文将介绍如何绘制一条由直线分成两个彩色部分的椭圆。
引入头文件 graphics.h
。
#include <graphics.h>
初始化图形环境。
initgraph(width, height); // 初始化绘图窗口
绘制椭圆。
setcolor(color1); // 设置颜色为 color1
setfillstyle(SOLID_FILL, color1); // 设置填充颜色为 color1
fillellipse(x, y, rx, ry); // 绘制椭圆,并填充为 color1
setcolor(color2); // 设置颜色为 color2
setfillstyle(SOLID_FILL, color2); // 设置填充颜色为 color2
fillellipse(x, y, rx - w, ry - h); // 绘制内部椭圆,并填充为 color2
绘制直线。
setlinestyle(SOLID_LINE, thickness, 0); // 设置线型为实线
setcolor(color); // 设置颜色为 color
line(x - w, y, x + w, y); // 绘制横线
完整代码如下,可使用 Dev-C++ 等集成开发环境直接运行。
#include <graphics.h>
int main()
{
int width = 640, height = 480; // 设定绘图窗口大小
int x = width / 2, y = height / 2; // 设定绘图中心点坐标
int rx = 150, ry = 100; // 设定椭圆长轴、短轴半径
int w = 60, h = 40; // 设定内部椭圆长轴、短轴半径
int thickness = 5; // 设定直线粗细
int color1 = YELLOW, color2 = BLUE, color = RED; // 设定颜色
initgraph(width, height); // 初始化绘图窗口
setcolor(color1); // 设置颜色为 color1
setfillstyle(SOLID_FILL, color1); // 设置填充颜色为 color1
fillellipse(x, y, rx, ry); // 绘制椭圆,并填充为 color1
setcolor(color2); // 设置颜色为 color2
setfillstyle(SOLID_FILL, color2); // 设置填充颜色为 color2
fillellipse(x, y, rx - w, ry - h); // 绘制内部椭圆,并填充为 color2
setlinestyle(SOLID_LINE, thickness, 0); // 设置线型为实线
setcolor(color); // 设置颜色为 color
line(x - w, y, x + w, y); // 绘制横线
getch(); // 等待按键
closegraph(); // 关闭绘图窗口
return 0;
}
绘制的椭圆如下图所示。