|
@ -1,30 +1,6 @@ |
|
|
# libigl example project |
|
|
# static simulation |
|
|
|
|
|
|
|
|
A blank project example showing how to use libigl and cmake. Feel free and |
|
|
A static simulation with gui |
|
|
encouraged to copy or fork this project as a way of starting a new personal |
|
|
|
|
|
project using libigl. |
|
|
|
|
|
|
|
|
|
|
|
## See the tutorial first |
|
|
|
|
|
|
|
|
|
|
|
Then build, run and understand the [libigl |
|
|
|
|
|
tutorial](http://libigl.github.io/libigl/tutorial/). |
|
|
|
|
|
|
|
|
|
|
|
## Dependencies |
|
|
|
|
|
|
|
|
|
|
|
The only dependencies are STL, Eigen, [libigl](http://libigl.github.io/libigl/) 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](https://cmake.org/cmake/help/latest/module/FetchContent.html), |
|
|
|
|
|
thus requiring no setup on your part. |
|
|
|
|
|
|
|
|
|
|
|
To use a local copy of libigl rather than downloading the repository via FetchContent, you can use |
|
|
|
|
|
the CMake cache variable `FETCHCONTENT_SOURCE_DIR_LIBIGL` when configuring your CMake project for |
|
|
|
|
|
the first time: |
|
|
|
|
|
``` |
|
|
|
|
|
cmake -DFETCHCONTENT_SOURCE_DIR_LIBIGL=<path-to-libigl> .. |
|
|
|
|
|
``` |
|
|
|
|
|
When changing this value, do not forget to clear your `CMakeCache.txt`, or to update the cache variable |
|
|
|
|
|
via `cmake-gui` or `ccmake`. |
|
|
|
|
|
|
|
|
|
|
|
## Compile |
|
|
## Compile |
|
|
|
|
|
|
|
@ -35,12 +11,16 @@ Compile this project using the standard cmake routine: |
|
|
cmake .. |
|
|
cmake .. |
|
|
make |
|
|
make |
|
|
|
|
|
|
|
|
This should find and build the dependencies and create a `example` binary. |
|
|
This should find and build the dependencies and create a `static_simulation_gui` binary. |
|
|
|
|
|
|
|
|
## Run |
|
|
## Run |
|
|
|
|
|
|
|
|
From within the `build` directory just issue: |
|
|
To run the program, simply execute the binary: |
|
|
|
|
|
|
|
|
|
|
|
./static_simulation_gui |
|
|
|
|
|
|
|
|
|
|
|
## Usage |
|
|
|
|
|
The load files are in `sim-test/rigid-test/*/json`, generated by `sim-test/rigid-test/*/*.json.in`. |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
./example |
|
|
|
|
|
|
|
|
|
|
|
A glfw app should launch displaying a 3D cube. |
|
|
|
|
|