基于 C++(MSVC) 和 OpenGL 的简单画图工具

simple-openl-graphic-tool

源代码可从本项目仓库下载:
📌github
📌gitee

基于 C++(MSVC) 和 OpenGL 的简单画图工具✨ 通过橡皮筋技术动态绘制图形;Liang-Barsky 算法批量裁剪直线、折线;椭圆的中点 Bresenham 算法绘制椭圆。

📌包含可执行文件,环境配置指南。

个人网站:www.bytesc.top

个人博客:blog.bytesc.top

🔔 如有项目相关问题,欢迎在本项目提出issue,我一般会在 24 小时内回复。

源代码

C++ 源代码文件。如果在 visual studio 2022 以外的其它 OpenGL 环境运行,使用以下代码文件即可。

│  simple-openl-graphic-tool.cpp   # 主要源代码文件,项目入口
│  lineClipping.cpp  # Liang-Barsky 算法
│  lineClipping.h 
│  onMidPointEllispe.cpp # Bresenham 算法
│  onMidPointEllispe.h

页面展示

Liang-Barsky 算法裁剪折线

请添加图片描述
右键选中 Line 菜单开始画图折线
请添加图片描述

键盘按 P 进入画图模式。(注意,所有键盘操作必须切换到英语输入法,中文输入法无效)

之后按住左键确定开始点,按住左键拖动画折线,松开左键即确定一个顶点,再按左键即可继续。

请添加图片描述

键盘按 E 进入裁剪模式。(注意,所有键盘操作必须切换到英语输入法,中文输入法无效)

按住左键拖动裁剪框,松开确定框的大小。

请添加图片描述

键盘按 C ,程序将使用 Liang-Barsky 算法按照裁剪框裁剪折线。

请添加图片描述

Bresenham 算法画椭圆

请添加图片描述

右键选中 ellipse 菜单开始画图
请添加图片描述

按住左键拖动,即可画图
请添加图片描述

可连续画多张图,右键选择clear菜单项可清空
请添加图片描述

按住左键拖动鼠标画图时,同时按住shift可以画正圆
请添加图片描述
请添加图片描述

运行环境

运行环境

  • windows 11
  • Visual Studio 2022
  • OpenGL
    • glfw-3.3.8.bin.WIN64
    • glutdlls37beta

不配置环境

如果仅运行可执行文件,不修改和调试,无需配置环境。

可执行文件在项目目录下的 x64/debug/simple-openl-graphic-tool.exe 鼠标双击即可。

环境配置

配置方法参考这篇我转载的知乎文章 VS2022的openGL环境搭建(完整篇)

Visual Studio 2022 配置 OpenGL 所需相关资源和指南(转载非原创)在 conf 文件夹内。

conf/Exported.vssettings 文件为导出的 visual studio 配置

项目结构

源代码

C++ 源代码文件。如果在 visual studio 2022 以外的其它 OpenGL 环境运行,使用以下代码文件即可。

│  simple-openl-graphic-tool.cpp   # 主要源代码文件,项目入口
│  lineClipping.cpp  # Liang-Barsky 算法
│  lineClipping.h 
│  onMidPointEllispe.cpp # Bresenham 算法
│  onMidPointEllispe.h

vs 工程目录

visual studio 2022 工程目录

│  .gitignore
│  LICENSE
│  lineClipping.cpp
│  lineClipping.h
│  onMidPointEllispe.cpp
│  onMidPointEllispe.h
│  packages.config
│  README.md
│  simple-openl-graphic-tool.cpp   # 主要源代码文件,项目入口
│  simple-openl-graphic-tool.sln
│  simple-openl-graphic-tool.vcxproj
│  simple-openl-graphic-tool.vcxproj.filters
│  simple-openl-graphic-tool.vcxproj.user
│
├─conf
│      conf.pdf  # 配置指南
│      Exported.vssettings # 导出的visual-studio配置
│      glad.zip
│      glfw-3.3.8.bin.WIN64.zip
│      glutdlls37beta.zip
│
├─packages
├─readme_img
│
└─x64
    ├─Debug
    │  │  freeglut.dll
    │  │  glew32.dll
    │  │  glewinfo.exe
    │  │  glfw3.dll
    │  │  simple-openl-graphic-tool.exe  # 可执行文件入口
    │  │  simple-openl-graphic-tool.exe.recipe
    │  │  simple-openl-graphic-tool.ilk
    │  │  simple-openl-graphic-tool.log
    │  │  simple-openl-graphic-tool.obj
    │  │  simple-openl-graphic-tool.pdb
    │  │  simple-openl-graphic-tool.vcxproj.FileListAbsolute.txt
    │
    └─Release
        │  freeglut.dll
        │  glew32.dll
        │  glewinfo.exe
        │  glfw3.dll
        │  lineClipping.obj
        │  onMidPointEllispe.obj
        │  simple-openl-graphic-tool.exe  # 可执行文件入口
        │  simple-openl-graphic-tool.exe.recipe
        │  simple-openl-graphic-tool.iobj
        │  simple-openl-graphic-tool.ipdb
        │  simple-openl-graphic-tool.log
        │  simple-openl-graphic-tool.obj
        │  simple-openl-graphic-tool.pdb
        │  simple-openl-graphic-tool.vcxproj.FileListAbsolute.txt
       

运行方法

运行

运行可执行文件无需配置环境,鼠标双击打开 x64/debug/simple-openl-graphic-tool.exe

调试

先按照上文配置环境,然后用 Visual Studio 2022 打开 simple-openl-graphic-tool.sln,源码文件为 simple-openl-graphic-tool.cpp

调试前,需要把以下文件从生成中排除,方法如下图:

│  lineClipping.cpp
│  lineClipping.h
│  onMidPointEllispe.cpp
│  onMidPointEllispe.h

请添加图片描述
请添加图片描述
也可从conf/Exported.vssettings 导入的visual-studio配置
请添加图片描述
请添加图片描述
点击浏览 找到并选择 conf/Exported.vssettings
请添加图片描述
请添加图片描述

开源许可证

此翻译版本仅供参考,以 LICENSE 文件中的英文版本为准

MIT 开源许可证:

版权所有 © 2023 bytesc

特此授权,免费向任何获得本软件及相关文档文件(以下简称“软件”)副本的人提供使用、复制、修改、合并、出版、发行、再许可和/或销售软件的权利,但须遵守以下条件:

上述版权声明和本许可声明应包含在所有副本或实质性部分中。

本软件按“原样”提供,不作任何明示或暗示的保证,包括但不限于适销性、特定用途适用性和非侵权性。在任何情况下,作者或版权持有人均不对因使用本软件而产生的任何索赔、损害或其他责任负责,无论是在合同、侵权或其他方面。

  • 15
    点赞
  • 25
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
以下是在VS Code中配置C/C++环境使用MSVC编译器的步骤: 1. 安装VS Code:首先,你需要安装VS Code编辑器。你可以从官方网站下载并按照安装说明进行安装。 2. 安装C/C++扩展:在VS Code中,你需要安装C/C++扩展以便支持C/C++开发。在VS Code的扩展面板中搜索"C/C++",然后点击安装。 3. 安装MSVC编译器工具集:你需要安装Microsoft C++ (MSVC)编译器工具集。你可以从Microsoft官方网站下载并按照安装说明进行安装。 4. 配置IntelliSense文件:在VS Code中,你可以配置IntelliSense以提供代码补全和语法检查功能。你可以在项目根目录下创建一个名为".vscode"的文件夹,并在该文件夹中创建一个名为"c_cpp_properties.json"的文件。在该文件中,你可以指定编译器的路径和其他相关配置。以下是一个示例配置文件: ```json { "configurations": [ { "name": "Win32", "includePath": [ "${workspaceFolder}/**" ], "defines": [], "compilerPath": "C:/path/to/msvc_compiler", "cStandard": "c11", "cppStandard": "c++17", "intelliSenseMode": "msvc-x64" } ], "version": 4 } ``` 请注意,你需要将"compilerPath"字段的值替换为你实际安装的MSVC编译器的路径。 5. 创建编译任务文件:在VS Code中,你可以创建一个名为"tasks.json"的文件来定义编译任务。在项目根目录下的".vscode"文件夹中创建该文件,并添加以下内容: ```json { "version": "2.0.0", "tasks": [ { "label": "build", "type": "shell", "command": "cl.exe", "args": [ "/EHsc", "/Fe:", "${file}" ], "group": { "kind": "build", "isDefault": true } } ] } ``` 请注意,你可能需要根据你的项目和编译器的要求进行适当的修改。 6. 创建调试配置文件:在VS Code中,你可以创建一个名为"launch.json"的文件来定义调试配置。在项目根目录下的".vscode"文件夹中创建该文件,并添加以下内容: ```json { "version": "0.2.0", "configurations": [ { "name": "(Windows) Launch", "type": "cppvsdbg", "request": "launch", "program": "${workspaceFolder}/a.exe", "args": [], "stopAtEntry": false, "cwd": "${workspaceFolder}", "environment": [], "externalConsole": true } ] } ``` 请注意,你可能需要根据你的项目和编译器的要求进行适当的修改。 7. 调试源程序:现在,你可以在VS Code中打开你的C/C++源代码文件,并使用上述配置进行编译和调试。你可以按下F5键开始调试。 总结:以上是在VS Code中配置C/C++环境使用MSVC编译器的步骤。通过这些步骤,你可以在VS Code中进行C/C++开发,并使用MSVC编译器进行编译和调试。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值