童老师的樱花树令人印象深刻,今天闲来无事,尝试着把递归改成了循环,把开花的方式稍加修改,得到了一颗稍微不一样的一棵树,看起来像是一颗桃树?
掐指一算,今天恰为我写代码的第六周年,想起初学的时候就是从 EasyX 开始的,于是打算用 EasyX 给自己画一个纪念海报~ 使用 D2D API 进行抗锯齿绘图。
本文将会介绍如何绘制出一些基础的函数图象,并对一些可能遇到的问题提供我的解决方案,绘制函数图像是一个非常复杂的话题,本文中给出的代码也只能画出基础的函数图像。
线程的创建和销毁会带来不必要的开销,本文实现一个C++14即可使用的线程池,可以像使用 std::thread 一样多线程并行,并有更多的功能
本文将会介绍 C++ 中深拷贝与浅拷贝的内容,并介绍值语义和引用语义的相关概念,希望让读者能够比较深入地理解深浅拷贝。
不知道各位是否又在 EasyX 中想要显示数学公式却难以实现的困扰呢?而现在,EasyTex,一个基于 EasyX 的简单的仿 LaTeX 排版引擎,或许可以帮你解决一些问题。
基于逐点插入法的生成三角网,满足空圆特性,可以选择可视化,但是可视化用回车推动,因此生成随机点较少(避免回车按烂),同时查过资料确定三角网生成最外围不一定是凸包。
这个程序是实现可视化凸包算法的,帮助理解凸包算法,能够解决求一堆点所能围出的最大面积的问题。同时这个算法里判断一个点在一个向量的左边还是右边的方法对我有所启发。
这是一个 ”伪3D” 赛车游戏,支持双人游戏,并且还有多个预设地图可供选择,可以和伙伴开车竞速了~还可以自己绘制地图和车辆,快来试试吧!
相信 MC 红石电路的强大是人尽皆知的。在 MC 中,你甚至可以用红石电路造出 CPU,实现计算机。此程序模拟 MC 红石运行环境,支持平面红石电路设计和仿真运行,可以实现许多复杂的逻辑电路。
这是我以前写的一个俄罗斯方块小游戏,里面用到的 C++ 特性并不多。游戏主要分成了两个类来实现:Game 和 Block,分别用来实现游戏逻辑和单独的俄罗斯方块,但主要的游戏逻辑放到了 main 函数中实现。这样,每个类分工明确,就实现了俄罗斯方块游戏。代码简单,里面的每个游戏逻辑都值得初学者分析和学习
这个橘子钟表程序主要分成三个部分:画表盘、画表针、显示当前时间。画表盘部分运用到了三次贝塞尔曲线、HSL 颜色模型以及字符串格式化命令,其中三次贝塞尔曲线确定点的坐标比较复杂。画表针主要涉及到计算各表针运动的弧度。显示当前时间所用字体为等宽字体,其作用在于居中后效果更均匀。
在 EasyX 输出字体的时候,要求字体在当前环境中可用,否则就无法看到字体的效果。使用系统中默认存在的字体比较简单,可以直接使用。但是如果字体是自己精心挑选的,系统中不存在,将程序发给别人以后,要求别人安装字体才能启动程序看到效果,就不太合适了。本文详细讲述在不安装字体的前提下如何通过字体文件设置字体样式。
EasyX 的旋转函数 rotateimage 不支持含有透明信息的图像的旋转,在设置了背景色的情况下会丢失透明信息,故特地编写了保留透明信息的旋转函数。
在此之前也有人写过此类旋转函数,旋转效果很好,也实现了目标效果,可惜存在一些致命 Bug,否则我也不会再造轮子。此旋转函数是原创的,取前人所长,去前人所短,绝对能满足您的旋转需求,让您也不必再造轮子。
当你想把自己用 EasyX 编写的代码发给别人时,也许对方因为没安装 EasyX 导致无法编译。这时候,你可以只把 EasyX 拷贝进项目里,然后随着项目一起打包发给别人,方便其他人编译。本文以 Code::Blocks(MinGW)为例,详细讲述这种方法。