You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
|
2 weeks ago | |
|---|---|---|
| include | 3 years ago | |
| src | 3 years ago | |
| .gitignore | 3 years ago | |
| CMakeLists.txt | 3 years ago | |
| README.md | 2 weeks ago | |
README.md
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)
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
作者
李采月