# OCCTMeshless 基于 OpenCASCADE 的无网格法(Meshless Method)离散化工具。从 CAD 模型(B-Rep)出发,直接在边界和内部生成离散节点,无需传统网格划分。 ## 功能 - 从 OpenCASCADE B-Rep 模型读取几何 - 边界自适应离散化(discretizeBoundaryWithStep) - 内部节点填充(FillInterior) - KDTree 空间搜索与包含检测 - 离散结果 VTK 输出 ## 依赖 - **OpenCASCADE 7.x+**:CAD 几何引擎 - **Eigen3**:线性代数 - **Visual Studio**(Windows)/ GCC(Linux) - **nanoflann**:KDTree 实现(内置) ## 编译(Windows) ```shell mkdir build && cd build cmake -G "Visual Studio 17 2022" .. ``` 需设置 `CMAKE_PREFIX_PATH` 指向 OpenCASCADE 安装目录。 ## 目录结构 ``` . ├── include/ │ ├── OccShape.hpp # OpenCASCADE 几何封装 │ ├── OccHelper.hpp # OpenCASCADE 辅助函数 │ ├── DomainDiscretization.hpp # 域离散化 │ ├── FillBoundary.hpp # 边界填点 │ ├── FillInterior.hpp # 内部填点 │ ├── KDTree.hpp # KDTree 空间索引 │ ├── PointCloud.hpp # 点云数据 │ └── writeVTK.hpp # VTK 输出 ├── src/ │ └── main.cpp # 示例:B-Rep → 离散点 └── CMakeLists.txt ``` ## 作者 李采月