- 博客(403)
- 收藏
- 关注
原创 BambuStudio学习笔记:GLEW 库全面解析** - OpenGL 扩展加载的瑞士军刀
**GLEW**是一个跨平台的 **OpenGL 扩展加载库**,用于简化 OpenGL 扩展和核心函数的动态加载。其核心功能包括:• **自动检测驱动支持的扩展**:运行时查询显卡支持的 OpenGL 扩展。• **简化扩展函数调用**:通过宏和函数指针封装,无需手动获取函数地址。• **核心版本适配**:支持从 OpenGL 1.1 到最新版本的核心函数加载。• **多平台支持**:Windows、Linux、macOS、嵌入式系统(如 Raspberry Pi)。
2025-06-12 08:07:25
279
原创 BambuStudio学习笔记:FreeType字体渲染引擎
**FreeType** 是一个开源的 **字体渲染引擎**,用于将字体文件(如 TTF、OTF、WOFF)转换为可渲染的位图或矢量图形。
2025-06-11 08:18:02
790
原创 BambuStudio学习笔记;CURL 库全面解析 - 跨平台网络传输的瑞士军刀
**CURL**(Client URL)是一个开源的 **命令行工具** 和 **库**(libcurl),支持通过 URL 进行数据传输,覆盖 **30+ 协议**(HTTP/HTTPS、FTP、SMTP、MQTT、SFTP 等)。其核心特点包括:• **跨平台**:支持 Windows/Linux/macOS/嵌入式系统• **多语言绑定**:C/C++、Python、PHP、Java 等• **高可扩展性**:SSL/TLS、代理、Cookie、压缩、异步请求
2025-06-06 08:43:21
566
原创 BambuStudio学习笔记:CGAL 库深度解析 - 计算几何领域的瑞士军刀
**CGAL**(Computational Geometry Algorithms Library)是一个开源的 **C++ 计算几何算法库**,提供高效、可靠的几何数据处理能力。其设计目标为:• **精确性**:处理浮点数误差导致的几何不确定性• **灵活性**:通过模板和策略类实现高度可定制• **高性能**:基于 C++ 和 Boost 实现核心算法优化**应用领域**:计算机图形学、地理信息系统(GIS)、CAD/CAM、机器人路径规划、3D 打印等。
2025-06-05 08:09:11
513
原创 BambuStudio学习笔记:Cereal 库深度解析** - C++ 序列化的现代解决方案
**Cereal** 是一个轻量级、高性能的 **C++ 序列化库**,支持将对象转换为 **二进制**、**XML** 或 **JSON** 格式,并支持跨平台反序列化。其核心设计目标是 **简化代码侵入性** 和 **提升开发效率**,适用于游戏存档、网络数据传输、配置持久化等场景。
2025-06-04 08:31:53
508
原创 BambuStudio学习笔记:Blosc 库
**Blosc** 是一个为 **科学计算和大规模数据** 设计的高性能压缩库,专注于 **内存和存储优化**。其核心目标是通过 **SIMD 加速** 和 **多线程并行**,实现 **超高速的压缩/解压速度**,尤其适合处理数值型二进制数据(如 NumPy 数组)。由 [Francesc Alted](https://github.com/FrancescAlted) 开发,广泛应用于 HDF5、PyTables、Dask 等数据科学工具链。
2025-06-03 08:32:28
1002
原创 BambuStudio学习笔记:angle.t Perl测试脚本
此代码文件是一个Perl单元测试脚本,用于验证几何计算模块的核心功能,包括:•线段方向计算(笛卡尔坐标系下的弧度/角度表示)•三点角度计算•弧度到角度的特殊转换规则其核心测试对象为类的三个方法和两个几何工具函数,覆盖了极坐标方向计算、角度转换和空间三点夹角的数学实现。
2025-05-28 08:23:36
370
原创 BambuStudio学习笔记:stb_dxt
`stb_dxt` 是 **Sean Barrett** 开发的 [`stb` 单文件公共领域库集合](https://github.com/nothings/stb) 的一部分,专门用于 **DXT(S3TC)纹理压缩**。DXT 是一种广泛使用的有损纹理压缩格式(如 DXT1/DXT5),可显著减少显存占用,适用于实时图形渲染(如 OpenGL/DirectX 游戏开发)。
2025-05-27 08:17:08
781
原创 BambuStudio学习笔记:Shiny
Shiny 是一款速度极快、文档齐全且迄今为止最易用的 C/C++/Lua 高性能分析器,无需对现有项目进行大规模修改。结果经过平滑处理,并在运行时以调用树或按时间排序的形式显示。输出结果还可以在 Ogre3D 中渲染为图形,并可轻松自定义为任何其他图形引擎!
2025-05-26 08:35:24
65
原创 BambuStudio学习笔记:semver
**semver** 是用于处理 **语义化版本规范(SemVer 2.0)** 的跨语言库集合,提供版本号解析、比较、约束匹配等功能。常用于包管理工具(如npm、Cargo)、CI/CD版本验证及依赖关系解析等场景。
2025-05-23 08:27:45
148
原创 BambuStudio学习笔记:Qhull
**Qhull** 是一个开源的**计算几何算法库**,主要用于高维空间的凸包计算(Convex Hull),并提供Delaunay三角剖分、Voronoi图、半空间交集等几何计算能力。该库基于C语言实现,广泛应用于科学计算、数据分析和3D建模领域。
2025-05-22 08:52:52
168
原创 BambuStudio学习笔记:nlohmann/json
**nlohmann/json** 是一个现代C++实现的 **头文件级JSON解析/生成库**,由Niels Lohmann开发。该库以直观的API设计著称,支持C++11及以上标准,广泛应用于配置文件处理、API数据交换和序列化场景。
2025-05-21 08:24:51
297
原创 BambuStudio学习笔记:NanoSVG
**NanoSVG** 是一个轻量级单文件C/C++库,专注于将 **SVG矢量图形** 解析为顶点数据集合。其设计目标是为实时渲染提供简化的SVG解析能力,常用于游戏开发、嵌入式GUI系统及可视化工具链。
2025-05-20 08:19:49
135
原创 BambuStudio学习笔记:miniz
**miniz** 是一个轻量级的单文件压缩库,提供 **zlib兼容的Deflate压缩算法** 实现,并支持基本的ZIP/GZIP格式处理。该库以公共领域协议发布,广泛应用于嵌入式系统、游戏开发和低资源环境。
2025-05-19 08:32:05
154
原创 BambuStudio学习笔记:MiniLZO
**MiniLZO** 是 **LZO压缩算法** 的轻量级实现版本,专注于为嵌入式系统或资源受限环境提供高效的实时数据压缩与解压能力。其核心代码仅包含两个C文件(`minilzo.c` 和 `minilzo.h`),适用于对内存和计算资源敏感的场合。
2025-05-17 10:03:09
268
原创 BambuStudio学习笔记:MCut
**MCut** 是一个用于 **3D模型切割与布尔运算** 的开源库,主要应用于计算机图形学、CAD/CAM及3D建模领域。它支持基于平面或复杂曲面进行高效模型切割,并提供高质量的几何操作结果。
2025-05-16 08:21:05
271
原创 BambuStudio学习笔记:libnest2d
libnest2d 是一款专注于二维不规则形状高效排样的开源C++库,主要解决制造业中的材料利用率优化问题,具有以下核心特性:1. **智能嵌套算法**:支持多种启发式算法实现自动排样2. **形状支持**:处理任意多边形及带孔洞形状3. **工艺约束**:支持旋转角度限制、最小间距等生产要求4. **可视化调试**:集成SVG输出用于排样结果验证5. **跨平台**:纯头文件实现,无外部依赖
2025-05-14 08:17:24
677
原创 BambuStudio学习笔记:libigl
libigl 是一款基于C++和Eigen开发的轻量级几何处理库,专注于提供高效、易用的几何算法实现,主要特性包括:1. **简洁API设计**:基于Eigen矩阵运算,提供直观的几何操作接口2. **丰富算法集**:包含网格参数化、变形、曲面重建等核心算法3. **可视化支持**:集成OpenGL/GLFW实现算法结果即时预览4. **学术研究导向**:论文配套算法实现直接可用5. **跨平台支持**:Windows/Linux/macOS全平台兼容
2025-05-13 08:12:55
998
原创 BambuStudio学习笔记:ImGui
Dear ImGui(简称ImGui)是一个专注于高效开发工具集的C++即时模式图形用户界面库,主要特性包括:1. **即时模式架构**:每帧重建UI,无持久状态管理2. **零拷贝集成**:直接与游戏引擎共享内存数据3. **硬件加速渲染**:支持主流图形API(OpenGL/DX/Vulkan/Metal)4. **实时热重载**:界面参数修改即时生效5. **调试优先设计**:内置性能分析工具
2025-05-12 08:19:01
735
原创 BambuStudio学习笔记:HintsToPot
本程序是一个用于自动化提取本地化提示信息的工具,主要实现从INI格式的提示配置文件中提取文本内容,并将其转换为GNU gettext的POT翻译模板格式。通过该工具可以实现:1. **配置解析** - 识别特定格式的[hint:*]配置段落2. **文本提取** - 抓取配置中的提示文本内容3. **模板生成** - 生成符合gettext标准的翻译模板4. **路径处理** - 自动构建输入输出文件路径5. **错误处理** - 完善的错误检测与提示机制
2025-05-10 15:34:46
334
原创 BambuStudio学习笔记:HIDAPI
HIDAPI 是一款跨平台开源库,专为访问 HID(人机接口设备)设计,具有以下核心特性:- **全平台支持**:Windows/Linux/macOS 统一API- **免驱访问**:直接操作USB HID设备- **双模式支持**:同步/异步数据读写- **热插拔检测**:通过事件回调实现(需平台扩展)
2025-05-09 14:08:37
889
原创 BambuStudio学习笔记:glu-libtess
GLU libtess 是OpenGL工具库中的多边形细分模块,主要用于将复杂多边形(包括带孔洞的多边形)三角化为适合GPU渲染的三角形集合。其核心特性包括:- **任意多边形处理**:支持凹多边形、自相交多边形、带孔洞多边形- **多种细分规则**:提供奇偶(Odd Even)和非零环绕数(Non-Zero Winding)规则- **顶点回调机制**:支持自定义顶点数据处理- **内存高效**:增量式内存分配,避免大规模临时存储
2025-05-08 08:21:35
658
原创 BambuStudio学习笔记:Fast_float
Fast_float 是一款高性能的C++字符串到浮点数转换库,由Daniel Lemire团队开发,具有以下核心特性:- **极速解析**:比标准库`std::strtod`快4-10倍- **零依赖**:仅需头文件,支持C++11及以上标准- **精确兼容**:严格遵循IEEE-754标准- **内存安全**:无动态内存分配,防止缓冲区溢出
2025-05-07 08:14:41
296
原创 BambuStudio学习笔记:Expat XML
Expat 是一款基于事件驱动的高性能XML解析器,具有以下核心特性:-式解析**:支持边接收边解析,内存占用恒定(O(1))- **编码支持**:原生支持UTF-8/16/32,自动检测编码格式- **标准兼容**:严格遵循XML 1.0规范- **安全设计**:默认关闭外部实体扩展(防XXE攻击)
2025-05-06 08:45:53
666
原创 BambuStudio学习笔记:Boost
Boost 是由全球C++专家社区维护的高质量开源库集合,具有以下核心特征:- **标准候选库**:23个组件已进入C++标准(如智能指针、线程库)- **跨平台支持**:全面兼容Windows/Linux/macOS及嵌入式系统- **质量认证**:所有库通过严格的同行评审流程- **扩展生态**:超过160个模块覆盖各领域开发需求
2025-04-28 16:15:10
1038
原创 BambuStudio学习笔记:Ankerl
Ankerl 是一组由 Martin Ankerl 开发的高性能 C++ 工具库,主要包含以下两个核心组件:1. **nanobench** 微基准测试框架,专为快速准确的性能测量设计2. **unordered_dense** 高性能哈希表实现,替代标准库的 `std::unordered_map`
2025-04-27 09:11:52
166
原创 BambuStudio学习笔记:AGG
Anti-Grain Geometry (AGG) 是一款高性能的2D图形渲染引擎,专注于以下七大核心领域:1. **矢量图形呈现** - 基于贝塞尔曲线的路径描述系统 - 抗锯齿亚像素精确渲染 - 支持任意变形矩阵(affine transformations)2. **高级颜色控制** - 16位颜色通道深度 - 用户自定义颜色空间(支持RGBA/HSV/Lab等) - 透明度叠加模式(over/under/screen等28种模式)
2025-04-26 14:33:42
398
原创 BambuStudio学习笔记:ADMesh
ADMesh 是一款专注于 STL 文件处理的开源 C 语言库,主要提供以下核心能力:1. **三维网格修复** - 自动修复孔洞缺陷 - 修正非流形边错误 - 统一法线方向调整 - 移除重复/孤立顶点
2025-04-25 08:22:39
227
原创 BambuStudio学习笔记:TextShape
本模块基于Open CASCADE几何内核实现文本到三维网格的转换流程,主要功能包括:1. **字体资源管理**:扫描系统字体并建立字体路径映射2. **文字几何构建**:将文本生成二维轮廓(BRep表示)3. **三维拉伸成型**:将二维轮廓拉伸为三维实体4. **网格转换**:将CAD几何转换为三角网格模型
2025-04-24 08:20:41
1011
原创 BambuStudio学习笔记:Optimizer
本头文件定义了一个通用优化器框架,核心组件包括:- **结果容器**:保存优化结果(参数值、得分、状态码)- **边界约束**:定义参数取值范围- **停止条件**:控制优化终止规则- **梯度支持**:可选梯度信息容器- **优化器接口**:模板化基础接口类- **辅助工具**:类型转换和构造辅助函数
2025-04-23 08:39:21
349
原创 BambuStudio学习笔记:NLoptOptimizer
`NLoptOptimizer` 是基于开源库 **NLopt** 实现的多维度非线性优化器,支持全局优化、局部优化及混合策略。其核心特点包括:1. **算法模板化**:通过模板参数选择 NLopt 提供的多种优化算法(如遗传算法、单纯形法)2. **混合优化策略**:支持全局算法+局部算法的级联优化(如 MLSL 算法)3. **梯度自动处理**:能自动识别目标函数是否返回梯度信息4. **RAII 资源管理**:通过包装类安全管理 NLopt 对象生命周期5. **可扩展接口**:方便添加新的
2025-04-23 08:38:45
147
原创 BambuStudio学习笔记:BruteForceOptimizer
`BruteForceOptimizer` 是一个基于暴力搜索(穷举法)的多维参数优化器,通过遍历参数空间中的网格点寻找目标函数的最小值或最大值。适用于低维优化问题。其核心思想是将每个参数维度等分为指定数量的网格点,计算所有可能组合的目标函数值,并根据优化方向(最小化/最大化)选择最佳结果。
2025-04-22 08:34:04
229
原创 BambuStudio学习笔记:VoronoiVisualUtils
本模块基于Boost.Polygon Voronoi图数据结构实现SVG可视化功能,主要用于调试和展示多边形偏移计算过程。核心功能包括无限边裁剪、抛物线边离散化及多图层渲染。
2025-04-21 16:17:59
182
原创 BambuStudio学习笔记:VoronoiUtilsCgal
本类提供基于CGAL库的Voronoi图平面性检测工具,包含两种互补的验证算法,用于确保Voronoi图结构符合几何约束。主要应用于3D打印路径生成前的几何完整性校验。
2025-04-21 16:17:29
147
原创 BambuStudio学习笔记:VoronoiUtils
本模块提供Voronoi图处理工具集,主要用于处理基于线段生成的Voronoi图元数据,支持单元格范围遍历、抛物线离散化等操作。关键功能包括:- **Voronoi单元格分析**:计算围绕线段的梯形单元格范围- **几何转换工具**:坐标类型转换与范围校验- **抛物线离散化**:将Voronoi抛物线边转换为折线近似- **源数据回溯**:通过Voronoi单元反向定位输入几何元素
2025-04-17 08:19:24
304
原创 BambuStudio学习笔记:VoronoiOffset
本模块基于Boost.Polygon生成的Voronoi图实现多边形偏移算法,支持内外轮廓生成及圆弧离散化。核心功能包括Voronoi图元分类、带符号距离计算及偏移轮廓生成,主要应用于3D打印中的轮廓偏移路径规划。
2025-04-16 08:36:53
179
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人