Files
ViewDesignEngine/docs/mainpage.h
T

122 lines
4.1 KiB
C
Raw Normal View History

2026-07-24 10:59:03 +00:00
/**
* @mainpage ViewDesignEngine API 参考文档
*
* ViewDesignEngine 是一个高性能 C++17 计算几何引擎,覆盖从底层数学工具到
* B-Rep 拓扑建模、SDF 隐式建模、可微分几何、工业格式互操作的全栈能力。
*
* @section features 主要功能
* - **基础数学**: 点/向量/变换/AABB/公差系统
* - **曲线曲面**: Bézier / B-Spline / NURBS、自适应细分
* - **网格处理**: 半边数据结构、Delaunay、简化、平滑、修复、Marching Cubes
* - **空间索引**: BVH (SAH)、Octree、KD-Tree、R-Tree (STR)
* - **布尔运算**: 2D Sutherland-Hodgman、3D 网格布尔、B-Rep 布尔
* - **碰撞检测**: GJK/EPA、SAT、射线-三角形
* - **B-Rep 建模**: 边界表示、STEP/IGES 导入导出、fillet/chamfer/shell
* - **SDF 隐式建模**: 15+ 图元、CSG 表达式树、自动微分、梯度优化
* - **格式支持**: STEP、IGES、glTF/GLB、STL、OBJ、PLY
*
* @section modules 模块组织
*
* | 模块 | 命名空间 | 说明 |
* |------|---------|------|
* | @ref foundation | vde::foundation | 数学类型、公差、I/O、序列化 |
* | @ref core | vde::core | 点/线/面、变换、多边形、Voronoi、ICP |
* | @ref curves | vde::curves | NURBS 曲线曲面、细分 |
* | @ref mesh | vde::mesh | 半边网格、三角剖分、质量、修复 |
* | @ref spatial | vde::spatial | BVH、Octree、KD-Tree、R-Tree |
* | @ref boolean | vde::boolean | 2D/3D 布尔、多边形偏移 |
* | @ref collision | vde::collision | GJK、SAT、射线、三角交线 |
* | @ref brep | vde::brep | B-Rep 建模、STEP/IGES、布尔、验证 |
* | @ref sdf | vde::sdf | 隐式图元、CSG 树、自动微分、优化 |
* | @ref sketch | vde::sketch | 2D 约束求解 |
* | @ref capi | vde::capi | C API 绑定 |
*
* @section quickstart 快速开始
*
* @code{.cpp}
* #include <vde/sdf/sdf_primitives.h>
* #include <vde/sdf/sdf_operations.h>
*
* // 创建一个光滑并集: 球 + 盒子
* using namespace vde::core;
* auto f = [](double x, double y, double z) {
* double d1 = vde::sdf::sphere(Point3D(x,y,z), 1.5);
* double d2 = vde::sdf::box(Point3D(x,y,z), Point3D(1,1,1));
* return vde::sdf::op_smooth_union(d1, d2, 0.3);
* };
*
* // 求值
* double val = f(0, 0, 0); // SDF 值
* @endcode
*
* @section build 构建
*
* @code
* cmake -B build && cmake --build build -j$(nproc)
* cd build && ctest --output-on-failure
* @endcode
*
* 依赖: CMake ≥ 3.16, C++17 编译器, Eigen 3 (自动下载)
*
* @see https://github.com/.../ViewDesignEngine
*/
// ── Module group definitions ──
/**
* @defgroup foundation 基础模块 (vde::foundation)
* @brief 数学类型、公差系统、精确谓词、文件 I/O、序列化
*
* 提供整个引擎使用的底层基础设施。
*/
/**
* @defgroup core 核心模块 (vde::core)
* @brief 点/向量/变换、多边形、凸包、Voronoi、ICP、距离计算
*/
/**
* @defgroup curves 曲线曲面模块 (vde::curves)
* @brief Bézier、B-Spline、NURBS 曲线与曲面的求值、求导、细分
*/
/**
* @defgroup mesh 网格模块 (vde::mesh)
* @brief 半边网格、Delaunay 2D/3D、简化、平滑、修复、参数化、Marching Cubes
*/
/**
* @defgroup spatial 空间索引模块 (vde::spatial)
* @brief BVH (SAH)、Octree、KD-Tree、R-Tree (STR bulk-loading)
*/
/**
* @defgroup boolean 布尔运算模块 (vde::boolean)
* @brief 2D Sutherland-Hodgman 裁剪、3D 网格布尔、多边形偏移
*/
/**
* @defgroup collision 碰撞检测模块 (vde::collision)
* @brief GJK/EPA、SAT、Möller-Trumbore 射线-三角形、三角-三角交线
*/
/**
* @defgroup brep B-Rep 模块 (vde::brep)
* @brief 边界表示建模、STEP/IGES 导入导出、布尔运算、验证、fillet/chamfer/shell
*/
/**
* @defgroup sdf SDF 模块 (vde::sdf)
* @brief 隐式建模:15+ 图元、CSG 树、自动微分、梯度优化、SDF→Mesh
*/
/**
* @defgroup sketch 草图模块 (vde::sketch)
* @brief 2D 约束求解器
*/
/**
* @defgroup capi C API 模块 (vde::capi)
* @brief 纯 C 接口,支持 FFI / 跨语言绑定
*/