chrisyu-cs / repulsive-curves

MIT License
194 stars 24 forks source link

Repulsive Curves

Christopher Yu, Henrik Schumacher, Keenan Crane ACM Transactions on Graphics 2020 (accepted)

Quick setup instructions

First, clone the project and all its dependencies:

git clone --recursive https://github.com/icethrush/repulsive-curves.git

If the recursive flag was not used to clone, then one can also get the dependencies by running:

git submodule update --init --recursive

From there, the project can be built using CMake.

cd repulsive-curves
mkdir build
cd build
cmake ..
make -j4

We highly recommend using Clang to build the project. Building with GCC/G++ is possible, but will require a different set of warnings to be suppressed.

The code can then be run:

./bin/rcurves_app path/to/scene.txt

For best performance, you should make sure that OpenMP is supported on your system.

Note that the file scene.txt has a particular format that describes where to find the curve data, as well as what constraints will be used. See scenes/FORMATS.md for details.

Using the project

The important options for manipulating curves are all under the "Curve options" panel in the system. These options are: