C语言图形库——easyx的使用
easyx的使用
1. 创建图像和画布
IMAGE image;定义一个IMAGE叫做image
loadimage(&image, _T(“路径\1.jpg”),100,100);把路径下图片赋给image,并且拉伸为100*100 ,如果只需要加载图片到绘图窗体上, 那么请将 loadimage 的第一个参数设置为 NULL 即可,这样就不需要定义 IMAGE 对象了。
image.getwidth();//获取图片image的宽
image.getheight();//获取图片image的高
initgraph(640, 480); //创建一个640*480的画布
initgraph(w,h, SHOWCONSOLE);//创建一个画布并保留控制台
putimage(0, 0, width, high,&image,x,y);//把图像image放入画布中,并且左上角在(0,0)位置,图形的宽为width,长为high,从(x,y)处开始取图,且(width, high,x,y)可以不写
closegraph(); //关闭画布
getimage(&img,70, 70, 60, 60);//以画布上(70,70)为左上角截取长宽为(60,60)的图像放入img中
2. 文字操作
setbkcolor(YELLOW);
setbkcolor(RGB(180,24,137)); //设置文字颜色
settextstyle(30, 30, “楷体”);//设置文字格式(长,平均宽度,字体)
sprintf_s(num, “%d”,i);//把int格式的i转化为字符串形式的num,并在下一条语句中输出在画布上
outtextxy(10,10,“小猫猫”); //在(10,10)处显示文字“小猫猫”
3. 画线操作
setlinecolor(RED);//设置直线颜色为红色
setlinestyle(PS_SOLID, 10);//设置线的格式
line(30, 50, 30, 100);//划直线连接(30,50)和(30,100)
4. 画点操作
putpixel(x,y,BULE);//在图形窗口的(x,y)处显示一个颜色为蓝色的点
5. 画矩形操作
setfillcolor(RED);//设置填充色
rectangle(x,y,xx,yy);//矩形左上角坐标(x,y)、右下角坐标(xx,yy)画一个矩形
6. 画圆操作
fillcircle(x, y,r);//以(x,y)为圆心,划半径为r的圆
7. 清空画布
cleardevice();//将当前图形窗口清空,还原至背景颜色。
8. XOR模式
setwritemode(R2_XORPEN); //设置XOR绘图模式,重复画线会恢复背景颜色,颜色叠加部分有重叠效果
9. 延时操作
Sleep(100);延时100毫秒,降低CPU占有率
10. 计秒数
#include<time.h>//需要头文件
clock_t start=clock();
clock_t end=(clock()-start)/CLOCKS_PER_SEC;
11. 随机函数
#include<time.h>
int num=rand()%100;
12. 颜色:
BLACK 黑 DARKGRAY
深灰 BLUE 蓝
LIGHTBLUE 亮蓝 GREEN绿
LIGHTGREEN 亮绿 CYAN 青 LIGHTCYAN 亮青 RED 红 LIGHTRED 亮红
MAGENTA 紫 LIGHTMAGENTA 亮紫 BROWN棕 YELLOW黄 LIGHTGRAY 浅灰 WHITE 白
纯绿色 0x00ff00 RGB(0,
255, 0)
青色 0xffff00 RGB(0,
255, 255) 注:青=蓝+绿
中灰色 0x7f7f7f RGB(127,
127, 127)
黄色 0x00ffff RGB(255,
255, 0) 注:黄=红+绿
颜色操作:
int c = getpixel(100, 100); 获取(100,100)处的颜色并返回给c
putpixel(100, 100,c);把颜色c放到画布(100,100)处
(0xff0000 - (c & 0xff0000)) | (0x00ff00 - (c &
0x00ff00)) | (0x0000ff - (c & 0x0000ff));//底片效果
13. 键盘操作:(捕获一个键盘输入并输出)
char c;
if(kbhit())
c=getch();
14. 鼠标操作:
MOUSEMSG msg; //定义一个鼠标消息
msg=GetMouseMsg();//获取鼠标消息
switch(msg.uMsg)
{
case WM_MOUSEMOVE: ……break;//鼠标移动消息
case WM_MOUSEWHEEL: ……break;//
鼠标滚轮拨动消息
case WM_LBUTTONDOWN: ……break;//
左键按下消息
case WM_MBUTTONDOWN: ……break;//
中键按下消息
case WM_RBUTTONDOWN: ……break;//
右键按下消息
}
Ps:在此例中可用msg.x和msg.y来确定鼠标位置
WM_MOUSEMOVE 鼠标移动消息
WM_MOUSEWHEEL 鼠标滚轮拨动消息
WM_LBUTTONDOWN 左键按下消息
WM_LBUTTONUP 左键弹起消息
WM_LBUTTONDBLCLK 左键双击消息
WM_MBUTTONDOWN 中键按下消息
WM_MBUTTONUP 中键弹起消息
WM_MBUTTONDBLCLK 中键双击消息
WM_RBUTTONDOWN 右键按下消息
WM_RBUTTONUP 右键弹起消息
WM_RBUTTONDBLCLK 右键双击消息
C语言图形库——easyx的使用相关推荐
- C语言图形库EasyX安装及基本使用
本文章介绍C++用EasyX进行C++基础图形编程介绍. EasyX安装: 1.点击上方超链接,进入官网,点击右侧下载EasyX 2.点击下载后的可执行文件: 3.EasyX安装非常简单,进入可执行文 ...
- C语言图形库——EasyX常用函数
上节讲到贴出一张图片的过程,本节接着介绍一些基本的图形库函数. 头文件 #include <graphics.h> 1.图形窗口背景颜色设置函数: 例 setbkcolor(YELLOW) ...
- c语言使用easyX图形库制作打气球小游戏
大一c语言使用easyX图形库制作打气球小游戏 如果你是入门easyX图形库,那么这个打气球小游戏将会是和不错的入门项目选择,easyX开创了可视化窗口,使用户更加直观的了解到对象的变化,总代码以及素 ...
- 用C语言图形库画一个红色爱心
这次我教大家用代码画一个心,这样你们就可以送给你们的女(男)朋友了.没找到对象的也可以用来表白啊. 1.首先,我去百度找了心形线的函数,如下: 2. 联系高中的数学知识,我们知道:f(x)>0和 ...
- c语言图形库三角形,Flappy Bird C语言实现及C图形库Easyx的使用
学习Eaxy X图形库后我的成果: 花了一周时间做出并完善了Flappy Bird,目前功能如下: 1. 背景的显示 2. 加入小鸟image 3. 小鸟自由下落,按空格键/鼠标右键后上升 4. 加入 ...
- 学完C语言可以学什么--C/C++图形库Easyx(万字教程,一文入门)
EasyX图形库教程 本文的封面第三章照片来自博客:爱心气球 文章目录 EasyX图形库教程 前言 1.EasyX是什么? 2.EasyX的安装 开始教程 1.基本概念 1.1颜色 1.2坐标 2.创 ...
- 停车场管理系统 C语言实现 EasyX图形库
一.设计目的 软件算法综合设计是理论教学的深化和补充,具有较强的实践性,是电气信息类各专业的一门重要的实践环节必修课,涵盖<程序设计基础>.<离散结构>.<面向对象程序设 ...
- 带有easyx图库的C语言程序,EasyX软件下载-EasyX(C++图形库)下载v20200902 官方版-西西软件下载...
EasyX是一款实用的C++图形库,为广大C语言爱好者提供强大的图形和游戏编程.EasyX的主要特色是为C语言和C++语言提供了通俗易懂易操作的绘图接口,提升编程效率的同时又大大减轻了编程难度,Eas ...
- C语言调用easyX图形库画圆盘时钟
#include<graphics.h> #include<stdio.h> #include<time.h> #include<math.h>#def ...
- c语言基于easyX樱花特效,C++基于easyx图形库实现推箱子游戏
本文实例为大家分享了C++实现推箱子游戏的具体代码,供大家参考,具体内容如下 头文件: #include #include //#include #include #include #include ...
最新文章
- ecs服务器配置git_基于ECS和NAS搭建个人网盘
- python之禅中文-python之禅-----我最喜欢的翻译版
- minicap_工具使用
- 为什么python打包的应用那么大_浅谈python3打包与拆包在函数的应用详解
- 七个你没用过的炫酷开发工具推荐
- 腾讯云前端性能优化大赛火热招募中!
- 刚接触git,提交文件时,遇到no changes added to commit
- 我从Kaggle机器学习竞赛中获得的经验
- 【华为大咖分享】1.云上开发,代码托管只是第一步(后附PPT下载地址)
- L1-078 吉老师的回归 (15 分)-PAT 团体程序设计天梯赛 GPLT
- linux用c++获取mac地址,网卡地址,网口地址,网卡序号ip地址,不使用 ioctl(sock, SIOCGIFCONF, ifc)获取网络接口名称,这个接口有时会返回-1获取不到,换方法获取
- 界面无小事(六):来做个好看得侧拉菜单!
- SparkStreaming自定义Receiver
- jenkins-启动和关闭服务
- 浅谈c++纯虚函数的多态与数据隐藏
- Hadoop安装教程方式
- NVIDIA显卡驱动的重装
- python wow自动打怪脚本官方教程_【按键精灵】魔兽世界LR 自动打怪脚本
- Msfvenom建立后门程序指令及开启监听
- 阿里云有奖调查结果公布,赠送10个阿里巴巴logo胸针
热门文章
- Java十大常用框架介绍
- 如何用 latex 排版日文 (xelatex)
- 如何安装PyAudio
- 获取汉字的拼音简码方法(仅适用于国标一级汉字)
- GNS3+JunOS
- 计算机网络毕业论文格式模板范文,计算机网络论文范文 计算机网络方面有关毕业论文的格式范文2万字...
- 学习笔记——激励函数activation func、损失函数loss func
- 加热垫美国站UL130测试项目及周期
- winform直接控制云台_Snoppa Vmate掌上防抖云台相机深度评测:日常视频轻松直出...
- Cisco Packet Tracer交换机划分VLAN