1 changed files with 46 additions and 14 deletions
@ -1,25 +1,57 @@ |
|||||
# Nurbs curve surface intersection check |
# NurbsIntersection |
||||
|
|
||||
## Dependencies |
NURBS 曲线-曲面求交算法。实现 NURBS 几何体之间的求交计算,支持 BVH 加速和牛顿迭代优化。 |
||||
|
|
||||
**STL**, **Libigl**, **Eigen** and the dependencies of the **igl::opengl::glfw::Viewer (OpenGL, glad and GLFW)**. The CMake build system will automatically download libigl and its dependencies using CMake FetchContent, thus requiring no setup on your part. |
## 功能 |
||||
|
|
||||
|
- NURBS 曲线与曲面求交 |
||||
|
- BVH(包围体层次结构)加速求交计算 |
||||
|
- 牛顿迭代法精确求解交点 |
||||
|
|
||||
|
## 依赖 |
||||
|
|
||||
## Platform |
- **libigl**:几何处理与可视化(GLFW + OpenGL) |
||||
|
- **Eigen3**:线性代数 |
||||
|
- **STL**:C++ 标准库 |
||||
|
|
||||
The project could run both on Linux and Windows. |
## 平台 |
||||
|
|
||||
## Compile |
支持 Linux 和 Windows。 |
||||
``` |
|
||||
mkdir build |
## 编译 |
||||
cd build |
|
||||
|
```shell |
||||
|
mkdir build && cd build |
||||
cmake .. |
cmake .. |
||||
make #if you are using visual studio, find the .sln project and build it. |
make |
||||
|
``` |
||||
|
|
||||
|
Windows 下使用 Visual Studio: |
||||
|
```shell |
||||
|
cmake -G "Visual Studio 17 2022" .. |
||||
|
# 打开生成的 .sln 文件编译 |
||||
``` |
``` |
||||
|
|
||||
## Run |
## 运行 |
||||
|
|
||||
|
参考 `examples/` 目录中的示例程序。 |
||||
|
|
||||
|
## 目录结构 |
||||
|
|
||||
``` |
``` |
||||
You could check out examples/ for more details. |
. |
||||
If you are using Visual Studio in Windows Platform, please choose one of the example project as a setup project then run it. |
├── include/ |
||||
|
│ ├── bvh.hpp # BVH 加速结构 |
||||
|
│ ├── intersection.hpp # 求交核心算法 |
||||
|
│ ├── newton.hpp # 牛顿迭代求解 |
||||
|
│ └── show_libigl.hpp # libigl 可视化 |
||||
|
├── src/ # 对应实现文件 |
||||
|
├── examples/ # 示例程序 |
||||
|
├── cmake/ |
||||
|
│ └── libigl.cmake # libigl 自动下载 |
||||
|
└── CMakeLists.txt |
||||
``` |
``` |
||||
|
|
||||
|
## 作者 |
||||
|
|
||||
|
李采月 |
||||
|
|||||
Loading…
Reference in new issue