【C语言】12番外:图形库

这篇具有很好参考价值的文章主要介绍了【C语言】12番外:图形库。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

图形库的基本说明:

目录

一. 图形库的基本概念:

        1.颜色:

        2.坐标:

        3.设备:

二. 图形库的绘图窗口:

        基本格式:#include "graphics.h" 或 #include "easyx.h"

        基本格式:initgraph(width,height,flag);

        基本格式:closegraph();

三. 基本图形的绘制:

1.绘制直线:

       基本格式:line(x1,y1,x2,y2);

2.画线颜色和样式的设置:

        ①设置画线颜色:        

              基本格式:setlinecolor(color);

                 ②设置画线样式:

              基本格式:setlinestyle(style,thickness);

3.矩形的绘制:

        ①绘制空心矩形:

              基本格式:rectangle(left,top,right,bottom);

        ②绘制填充矩形:

              基本格式:fillrectangle(left,top,right,bottom);

          4.填充颜色和样式的设置:

        ①填充颜色的设置:

              基本格式:setfillcolor(color);

        ②填充样式的设置:

              基本格式:setfillstyle(style);

          5.圆形的绘制:

        ①绘制空心圆:

              基本格式:circle(x,,y,radius);

        ②绘制填充圆:

              基本格式:fillcircle(x,y,radius);

四. 批量贴图和文字输出:

  1.批量贴图:

        ①定义图片对象:

              基本格式:IMAGE 图片对象名;

        ②加载图片:

              基本格式:loadimage(IMAGE*,plmgFile,nWidth,nHeight);

  2.文字输出:

        ①文字输出:

              基本格式:outtextxy(x,y,str);

  3.文字颜色和样式的设置:

        ①设置文字颜色:

              基本格式:settextcolor(color);

        ②设置文字样式:

              基本格式:settextstyle(nHeight,nWidth,IpseFace);   

五. 鼠标事件:

        ①定义鼠标消息变量:

               基本格式:MOUSEMSG 鼠标消息变量名;

        ②获取鼠标消息:

              基本格式:GetMouseMsg();

        ③鼠标事件:

              当前鼠标消息:鼠标消息变量名.uMsg;

六. 例如:


一.图形库的基本概念:

1.颜色:

        ①预定义颜色常量

        ②16进制的颜色表示

        ③RGB宏合成颜色

        ④色彩模型转换的RGB颜色

2.坐标:

        ①物理坐标:物理坐标用于描述设备的坐标体系,坐标原点在设备的左上角,x轴向右为正,y轴向下为正,度量单位是像素。

        ②逻辑坐标:逻辑坐标是在程序中用于绘图的坐标体系。默认情况下,逻辑坐标与物理坐标是一一对应的,但是可以通过函数进行修改。

3.设备:

        在EasyX中,设备分为两种,一种是默认的绘图窗口,另一种是IMAGE对象。

二.图形库的绘图窗口:

1.在使用图形库之前应包含图形库头文件。

        基本格式:#include "graphics.h" 或 #include "easyx.h"

2.在绘制图形之前应使用 initgraph() 函数打开绘图窗口。

        基本格式:initgraph(width,height,flag);

         width为绘图环境宽度,height为绘图环境高度,flag为绘图环境样式。

3.使用完绘图窗口后应使用closegraph()函数关闭绘图窗口。

         基本格式:closegraph();

三.基本图形的绘制:

1.绘制直线:

        可以使用line()函数绘制直线。

       基本格式:line(x1,y1,x2,y2);

        其中的x1,y1为起始点的坐标,x2,y2为终止点的坐标。

2.画线颜色和样式的设置:

        ①设置画线颜色:        

                使用setlinecolor()函数设置当前画线颜色。

              基本格式:setlinecolor(color);

                其中color为要设置的画线颜色。

【C语言】12番外:图形库,1C语言,c语言               

                       

         ②设置画线样式:

                使用setlinestyle()函数设置当前画线样式。

              基本格式:setlinestyle(style,thickness);

                其中style为画线样式,thickness为线的宽度。

                参数 style 指定了画线样式,该样式由直线样式、端点样式、连接样式三类组成。可以                    是其中一类或多类的组合。同一类型中只能指定一个样式。  

                【C语言】12番外:图形库,1C语言,c语言      

3.矩形的绘制:

        ①绘制空心矩形:

                使用rectangle()函数画空心矩形。

              基本格式:rectangle(left,top,right,bottom);

                其中left和top为矩形左上角x和y坐标,right和bottom为矩形右下角x和y坐标。

        ②绘制填充矩形:

                使用fillrectangle()函数绘制填充矩形。

              基本格式:fillrectangle(left,top,right,bottom);

                其中left和top为矩形左上角x和y坐标,right和bottom为矩形右下角x和y坐标。

                填充颜色默认为白色。

4.填充颜色和样式的设置:

        ①填充颜色的设置:

                使用setfillcolor()函数设置当前的填充颜色。

              基本格式:setfillcolor(color);

                其中color为填充颜色。

        ②填充样式的设置:

                使用setfillstyle()函数设置当前填充样式。

              基本格式:setfillstyle(style);

                其中style为指定的填充样式。

5.圆形的绘制:

        ①绘制空心圆:

                使用circle()函数画空心圆。

              基本格式:circle(x,,y,radius);

                其中x和y为圆心的坐标,radius为圆的半径。

        ②绘制填充圆:

                使用fillcircle()函数画填充圆。

              基本格式:fillcircle(x,y,radius);

                其中x和y为圆心的坐标,radius为圆的半径。

四.批量贴图和文字输出:

1.批量贴图:

        ①定义图片对象:

                使用图片对象IMAGE定义图片对象。

              基本格式:IMAGE 图片对象名;

                定义了图片对象之后就可以用图片对象保存图片了。

        ②加载图片:

                使用loadimage()函数从本地数据文件中读取图像并保存至图片对象中。

              基本格式:loadimage(IMAGE*,plmgFile,nWidth,nHeight);

                其中IMAGE*为保存图片的IMAGE对象指针,plmgFile为图片文件名,nWidth为图片的

                拉伸宽度,nHeight为图片的拉伸高度。

2.文字输出:

        ①文字输出:

                使用outtextxy()函数在指定位置输出字符串。 

              基本格式:outtextxy(x,y,str);

                其中x和y为输出文字的坐标,str为需要输出的字符串。

3.文字颜色和样式的设置:

        ①设置文字颜色:

                使用settextcolor()函数设置当前文字颜色。

              基本格式:settextcolor(color);

                其中color为需要设置的文字颜色。

        ②设置文字样式:

                使用settextstyle()函数设置当前字体样式。

              基本格式:settextstyle(nHeight,nWidth,IpseFace);   

                其中nHeight和nWidth为字体大小,IpseFace为字体名称。            

                

五.鼠标事件:

        ①定义鼠标消息变量:

                 使用MOUSEMSG类型定义鼠标消息变量。

               基本格式:MOUSEMSG 鼠标消息变量名;

        ②获取鼠标消息:

                使用GetMouseMsg()函数获取鼠标消息。

              基本格式:GetMouseMsg();

                鼠标消息中记录着许多鼠标相关的操作,比如:鼠标移动、鼠标滚轮拨动、左键按下、

                左键弹起、左键双击、中键按下、中键弹起、中键双击、右键按下、右键弹起、右键双 

                击和鼠标当前位置坐标等。      

        ③鼠标事件:

                鼠标消息的使用:

                鼠标当前位置x坐标:鼠标消息变量名.x;

                鼠标当前位置y坐标:鼠标消息变量名.y;

              当前鼠标消息:鼠标消息变量名.uMsg;

                        当前鼠标消息可以用于条件判断。

                        如,

                        WM_LBUTTONDOWN==鼠标消息变量名.uMsg  // 如果鼠标左键按下

                        WM_RBUTTONDOWN==鼠标消息变量名.uMsg  // 如果鼠标右键按下

例如:
#include"graphics.h"
#include<stdlib.h>

int main()
{
	initgraph(600,600);                          打开绘图窗口

	IMAGE img;                                   定义图片对象
	loadimage(&img,"图片\\手套.jpg", 100, 100);   加载图片

	setlinecolor(RED);                           设置画线颜色和样式
	setlinestyle(0, 5);
	//line(20, 20, 580, 580);

	setfillcolor(GREEN);                         设置填充颜色和样式
	setfillstyle(BS_HATCHED,0);

	fillrectangle(20, 20, 580, 580);             填充矩形

	setfillstyle(BS_HATCHED,1);                  绘制圆形
	fillcircle(300, 300, 40);

	putimage(300, 300, &img);                    贴上图片

	system("pause");                             暂停程序

	closegraph();                                关闭绘图窗口

	return 0;
}

【C语言】12番外:图形库,1C语言,c语言

____________________#文章来源地址https://www.toymoban.com/news/detail-712595.html

到了这里,关于【C语言】12番外:图形库的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 计算机图形学与opengl C++版 学习笔记 第12章 曲面细分

    术语Tessellation(镶嵌)是指一大类设计活动,通常是指在平坦的表面上,用各种几何形状的瓷砖相邻排列以形成图案。它的目的可以是艺术性的或实用性的,很多例子可以追溯到几千年前[TS16]。 在3D图形学中,Tessellation指的是有点不同的东西(曲面细分),但显然是由它的经

    2024年02月08日
    浏览(30)
  • MATLAB :【12】手把手教你在Linux以命令行方式(静默方式/非图形化方式)安装MATLAB(正版)

    碎碎念: (我知道我已经鸽了两个月,但是已经攒了很多的稿子没有发) 大家好,由于实验室的服务器中没有提供MATLAB的计算资源( 事实证明是我不知道QAQ ),在Ubuntu中安装了非图形的MATLAB。 通过参考其他博主的思路,并且利用T大提供的正版资源,中间踩了不少坑,最终

    2024年02月09日
    浏览(33)
  • C语言编写图形界面

    使用的是VSCode + MinGW; VSCode配置C语言的环境就不讲了,具体可以看一下这篇文章:VSCode配置C语言环境 先说一下本篇文章编译的条件吧。 本篇文章需要编译器链接Windows GDI32库,所以如果你用的是VSCode+MinGW,就需要修改task.json文件,使其在链接的时候,链接Window GDI32库。 修改

    2024年02月11日
    浏览(26)
  • C语言实战 - 贪吃蛇(图形界面)

    由于本人精力有限,暂时先把素材和代码放上,等以后有空再补教程。 目录 效果预览 准备工作 EasyX图形库 音频素材 代码编写 Transfer.h文件 game.cpp文件 main.c文件 先来看一下最终成品效果 贪吃蛇图形界面 这个贪吃蛇项目是基于EasyX图形库写的,所以需要安装一个easy图像库,

    2024年02月05日
    浏览(36)
  • C语言 打印图形(三角形)

    1.打印直角三角形 运行结果:   2.打印等边三角形 结果:   3.打印等腰三角形 结果如下:  

    2024年02月05日
    浏览(50)
  • C语言刷题----循环输出图形

    从12月开始,阿崽就没更新啦,阿崽刷了一波题 接下来的一段时间,准备更新我的刷题的文,有的题有不同思路,欢迎各位宝子和我一起交流 牛客网-----循环输出图形 BC98 线段图案 BC99 正方形图案 BC100 直角三角形图案 BC101 翻转直角三角形图案 BC102 带空格直角三角形图案 BC10

    2024年02月03日
    浏览(28)
  • C语言实战 - 扫雷(图形界面-鼠标操作)

    目录 最终效果预览 预备内容 相关说明 相关教程 用到的知识 EasyX图形库的下载 思路 源代码 最后   在学习如何编写扫雷程序之前,我们先来看一下最终写成代码的演示效果 扫雷视频素材   虽然这是C语言的实战项目,但由于easyx图形库需要在C++环境下才能运行,所以在写代

    2024年02月09日
    浏览(30)
  • C语言伪图形与键盘操作加扫雷实例

    大家好,这一篇博客讲的是我对C语言伪图形与键盘操作的理解。如果有错误,还请读者大大们指出。 在game.h头文件中: 在test.c源文件中: 程序展示: QQ录屏20231221184108 程序展示: QQ111 在game.h头文件中: 在test.c源文件中: 在game.c源文件中: 程序展示: 程序展示3 想要使用

    2024年02月02日
    浏览(33)
  • C语言图形界面开发(演示视频、完整代码文件)

    C语言初学者开始都是在黑白控制台上开发一些小程序,实现一些小功能,因为基础的C语言可视化效果比较差,所展示的都是黑白的字符和数字,比较单调乏味。一些大学的计算机类专业学生,大一学习C语言,学习基础语法和算法,通过平台刷题提高自己编程能力,一般不专

    2024年02月04日
    浏览(33)
  • easy X(C语言图形化界面)学习

    1.文件为(.cpp)后缀 运行结果如下: 第三个参数 画几个圆 举例: 运行结果: RGB画板的三原色数据 修改outtextxy函数,让其输出多个字符(字符串) 文字居中 运行结果: 举例: 输出图片相对路径时,把文件放在vs对应的项目文件中 运行结果为: 举例: 运行结果: 判断鼠标

    2024年02月02日
    浏览(30)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包