1 Star 12 Fork 0

GFigure/HiEasyX

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
克隆/下载
贡献代码
同步代码
取消
提示: 由于 Git 不支持空文件夾,创建文件夹后会生成空的 .keep 文件
2个月前
Loading...
README
MIT

HiEasyX Preview

License: MIT PRs Welcome

HiEasyX.cn

为 EasyX 图形库注入新活力!让 EasyX 使用快如闪电!

欢迎你为我们的仓库点上一个免费的 star⭐,这将鼓舞我们继续维护开发 HiEasyX。

欢迎加入我们的 QQ 交流群:761990769


测试阶段通知
当前版本为 HiEasyX 的全新迭代版本,目前还有还有部分功能没有实现,以及官网文档内容尚未完善。正处于公开测试阶段。我们诚挚邀请您参与体验测试,任何问题或建议欢迎通过 Issues 反馈!

开发者们都是兼职开发,问题处理可能不及时。但是一般半个月内会集中处理一批问题。

📃介绍

HiEasyX 是一个轻量、易用的 EasyX 扩展库。它使用即时性 GUI(IMGUI)为 EasyX 提供了一个易用简单的 GUI 扩展(并且会在未来继续扩展 EasyX 的绘图、窗口功能)。它直接在指定的 EasyX 缓冲区上进行绘图操作。

HiEasyX 具有极高的灵活性。无需对已有的 EasyX 代码做任何修改,就可以轻松将 HiEasyX 集成在你的项目中。无需复杂的界面设计,没有复杂的接口操作,十几行代码便可以构建一个交互界面。

不论您是用于教学演示程序构建,还是图形学算法快速验证,或是将 HiEasyX 用于你的毕业设计当中。HiEasyX 都能成为你的一位好帮手。

HiEasyX 是自由的,HiEasyX 以 MIT 协议开源,您可以以任何目的、利益免费自由地在任何场合使用 HiEasyX。

✨项目特色

  • 零成本集成 - 完全兼容现有 EasyX 项目,无需修改任何已有代码
  • 极简 IMGUI - 类即时模式的 GUI 设计,十几行代码构建基础界面
  • 轻量易用 - 核心代码约 5000 行,无需复杂的配置过程
  • 教学友好 - 特别适合图形学教学演示和算法可视化开发
  • 自由开源 - MIT 协议,可免费用于商业和学术用途
  • 完整的文档 - 我们的官网提供了所有控件的使用说明和注意事项,并提供一个开发者友好的文档助力您的开发。

🚀快速开始

无需繁琐的配置编译。您可以直接将 HiEasyX 的源码直接配置到您的项目中。您只需要:

  1. 克隆或下载源码

  2. 添加 HiEasyX 的头文件目录

  3. 引用 HiEasyX 的头文件

就可以开始使用 HiEasyX 了。

HX::Window(HXStr("Hello World!"), windowProfile);
HX::Text(HXStr("Hello HiEasyX!"));

static int               count = 0;
static HX::ButtonProfile buttonProfile;
HX::BeginSameLine();
if (HX::Button(HXStr("Hello Button"), buttonProfile)) {
    ++count;
}
HX::Text(HXStr("Count : ") + ToHXString(count));
HX::EndSameLine();

static HX::SliderProfile1f sliderProfile{ .MinValue = 0.f, .MaxValue = 4.f };
static float               value = 0;
HX::Slider1f(HXStr("Float Slider"), value, sliderProfile);
static HX::TextInputProfile textInputProfile{ .Text = HXStr("这是一个文本输入框"), .Size = {windowProfile.Size.X - 10, 70} };

HX::TextInput(textInputProfile);

完整代码请查阅目录下的 /example/EasyX/HelloWorld.cpp。欢迎您来我们的官网查阅具体的入门文档

📚与 EasyX 无缝交互

代码目录下的 /example/EasyX/Dashboard.cpp 展示了 HiEasyX 是如何做到和 EasyX 的无缝交互的。您只需要在原本的 EasyX 代码基础上补充部分 HiEasyX 的代码,即可将 HiEasyX 与 EasyX 整合起来。

🤝问题反馈与项目贡献

如果您在使用 HiEasyX 过程中遇到了任何问题。包括但不限于 bug、文档错误或者是您使用过程中有什么不明白的地方希望得到解答。我们都十分欢迎通过 Gitee 的 Issues 板块向我们反应咨询。

📦兼容性

使用 HiEasyX 本体,需要您的编译器起码支持 C11 的特性(目录下的 example 文件中的部分样例可能需要 C20 特性)。请确保您的 EasyX 库版本起码为 2023-7-23

对于 Visual Studio 用户,截至目前我们测试过 Visual Studio 2022Visual Studio 2019 是可以正常使用的。更多 Visual Studio 版本的向前兼容测试正在进行中。

对于 MinGW 用户,我们的代码仓库采用 CMake 作为构建系统,您可以通过 CMake 构建出您的编译器所对应的 HiEasyX。具体步骤,请参考我们的官网

Copyright (c) 2025 HiEasyX Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

简介

HiEasyX 是为 EasyX 图形库设计的轻量级扩展库,旨在帮助开发者快速构建 GUI 测试界面或开发简单图形应用程序。通过即时模式(IMGUI)设计,HiEasyX 提供简洁高效的 GUI 元素管理,同时集成实用绘图辅助功能,大幅降低 EasyX 用户的上手门槛和开发成本。 展开 收起
C++ 等 3 种语言
MIT
取消

发行版 (1)

全部

贡献者 (3)

全部

近期动态

12天前推送了新的提交到 main 分支,7bab1a0...627b8d2
12天前推送了新的提交到 main 分支,2be6094...7bab1a0
1个月前推送了新的提交到 main 分支,07913c0...2be6094
2个月前推送了新的提交到 main 分支,a1b89de...07913c0
2个月前推送了新的提交到 main 分支,b1ad890...a1b89de
加载更多
不能加载更多了
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
1
https://gitee.com/gfigure/hi-easyx.git
git@gitee.com:gfigure/hi-easyx.git
gfigure
hi-easyx
HiEasyX
main

搜索帮助