C言語用のeasyxグラフィックスライブラリをインストールする

図の手順に従って、easyx グラフィックス ライブラリをインストールします。

 次にコードを見てみましょう。

#include<easyx.h>
#include<stdio.h>
#define width 800
#define height 600

int main()
{
	initgraph(width, height);       // 初始化窗口(宽度, 高度) (单位像素)
	setorigin(width/2, height/2);   // 设置逻辑原点为窗口中心
	setaspectratio(1, -1);          //  设置xy坐标轴(x:1,y:-1)代表y翻转, x不动
	circle(0, 100, 100);            // 画一个圆(x:0,y:100的位置,半径为100)
	getchar();                      //阻断一下程序,防止窗口一闪而过。
	closegraph();                   // 关闭窗口
	return 0;
}

物理座標はウィンドウの左上隅の 0,0 にありますが、論理座標を使用するため、論理座標の原点を設定する必要があります: setorigin(width/2, height/2); //論理原点をウィンドウの中心に

その後、x 方向は左から右、y 方向は上から下となり、学校の表示戦略に準拠しません。y 方向は上から下である必要があるため、y 軸の方向を設定します。 : setaspectratio(1, -1); // y が反転し、x が移動しないことを表す xy 座標軸 (x: 1, y: -1) を設定します。

次のステップは、円を描画することです: Circle(0, 0, 100); // 以下の図に示すように、円 (位置 x: 0、y: 0、半径 100) を描画します。

 

 

4点を引くと以下のようになります。

#include<easyx.h>
#include<stdio.h>
#define width 800
#define height 600

int main()
{
	initgraph(width, height);            // 初始化窗口(宽度, 高度) (单位像素)
	setorigin(width / 2, height / 2);    // 设置逻辑原点为窗口中心
	setaspectratio(1, -1);               //  设置xy坐标轴(x:1,y:-1)代表y翻转, x不动
	putpixel(100,100, RED);              //画一个点(x:100, y:100, 红色)
	putpixel(100, -100, YELLOW);         //画一个点(x:100, y:-100, 黄色)
	putpixel(-100, -100, GREEN);         //画一个点(x:-100, y:-100, 绿色)
	putpixel(-100, 100, BLUE);           //画一个点(x:-100, y:100, 蓝色)
	getchar();
	closegraph();
	return 0;
}

上記の学習に従って、次に 1000 個のランダムな点を描画します。

#include<easyx.h>
#include<stdio.h>
#define width 1200      // 窗口宽度
#define height 960      // 窗口高度
#include<time.h>

int main()
{
	srand((unsigned int)time(NULL));
	initgraph(width, height);            // 初始化窗口(宽度, 高度) (单位像素)
	setorigin(width / 2, height / 2);    // 设置逻辑原点为窗口中心
	setaspectratio(1, -1);               //  设置xy坐标轴(x:1,y:-1)代表y翻转, x不动
	int i = 0;
	for (i = 0; i < 1000; i++)      // 绘制1000个点,位置随机
	{
		int x = rand() % (width + 1) - width / 2;
		int y = rand() % (height + 1) - height / 2;
		putpixel(x, y, GREEN);              //画一个点(x:100, y:100, 红色)
	}
		
	putpixel(100, -100, YELLOW);         //画一个点(x:100, y:-100, 黄色)
	putpixel(-100, -100, GREEN);         //画一个点(x:-100, y:-100, 绿色)
	putpixel(-100, 100, BLUE);           //画一个点(x:-100, y:100, 蓝色)
	getchar();
	closegraph();
	return 0;
}

 直線 (始点 x、始点 y、終点 x、終点 y):

線を引く:

#include<easyx.h>
#include<stdio.h>
#define W 900    //  窗口宽度
#define H 600    //  窗口高度

int main()
{
	initgraph(W, H);
	setaspectratio(1,-1);
	setorigin(W / 2, H / 2);
	line(-200, 200, 200, -200);   // 从坐标-200, 200  到坐标200, -200画一条线
	getchar();
	closegraph();
	return 0;
}

 次に、circle 関数を使用してブルズアイを描画します。

#include<easyx.h>
#include<stdio.h>
#define W 900
#define H 700

int main()
{
	initgraph(W, H);
	setorigin(W/2,H/2);
	setaspectratio(1, -1);
	int i = 0;
	for (i = 10; i <= 300; i += 10)
	{
		circle(0, 0, i);
	}
	getchar();
	closegraph();
	return 0;
}

 次に、長方形関数の描画方法を学びます。

長方形 (左上隅の x 座標、左上隅の y 座標、右下隅の x 座標、右下隅の y 座標)

 

#include<easyx.h>
#include<stdio.h>
#define W 800
#define H 600

int main()
{
	initgraph(W, H);
	setorigin(W / 2, H / 2);
	setaspectratio(1, -1);

	rectangle(-200, 200, 200, -200);

	getchar();
	closegraph();
	return 0;
}

 楕円関数の書き方を学びましょう:

楕円(左上隅のx座標、左上隅のy座標、右下隅のx座標、右下隅のy座標)

 

#include<easyx.h>
#include<stdio.h>
#define W 800
#define H 600

int main()
{
	initgraph(W, H);
	setorigin(W / 2, H / 2);
	setaspectratio(1, -1);
	
	ellipse(-200, 100, 200, -100);

	getchar();
	closegraph();
	return 0;
}

 角丸長方形の描き方を学びましょう:

 角丸長方形の 4 つの丸い角は、実際には 4 つの楕円で構成されます。

 

#include<easyx.h>
#include<stdio.h>
#define W 800
#define H 600

int main()
{
	initgraph(W, H);
	setorigin(W / 2, H / 2);
	setaspectratio(1, -1);

	roundrect(-200, 100, 200, -100, 200, 100);

	getchar();
	closegraph();
	return 0;
}

 

 セクター関数をプロットします。

 

 

#include<easyx.h>
#include<stdio.h>
#define W 800
#define H 600
#define PI 3.14

int main()
{
	initgraph(W, H);
	setorigin(W / 2, H / 2);
	setaspectratio(1, -1);

	pie(-200, 100, 200, -100, 0, PI/4);

	getchar();
	closegraph();
	return 0;
}

円弧関数を描画します。

#include<easyx.h>
#include<stdio.h>
#define W 800
#define H 600
#define PI 3.14

int main()
{
	initgraph(W, H);
	setorigin(W / 2, H / 2);
	setaspectratio(1, -1);

	arc(-200, 100, 200, -100, 0, PI / 4);

	getchar();
	closegraph();

	return 0;
}

 

 

おすすめ

転載: blog.csdn.net/xingyuncao520025/article/details/132225740