This is a HEADER-ONLY version of the code we used for the experiments in the paper "Fast and Robust Mesh Arrangements using Floating-point Arithmetic" by G. Cherchi, M. Livesu, R. Scateni and M. Attene (ACM TOG, SIGGRAPH Asia 2020).
Clone this repository, including submodules, with:
git clone --recursive https://github.com/gcherchi/FastAndRobustMeshArrangements.git
Once done, you may build the executable as follows (put Release
or Debug
instead of <build type>
):
mkdir build
cd build
cmake -DCMAKE_BUILD_TYPE=<build type> ..
This will produce an appropriate building configuration for your system. On Windows MSVC, this will produce a mesh_arrangement.sln file. On Linux/MacOS, this will produce a Makefile. Use it as usual to compile mesh_arrangement.
There are 4 versions of the solveIntersections(...)
function, with different outputs. Please, check the file solve_intersections.h
for more details.
We tested our code on MacOS (CLANG 10.0 64 bit), Linux (GCC 7.3.0 64 bit) and Windows (MSVC 2019 64 bit).
If you use our code in your academic projects, please cite our paper using the following BibTeX entry:
@article{CLSA20,
title = {Fast and Robust Mesh Arrangements using Floating-point Arithmetic},
author = {Cherchi, Gianmarco and Livesu, Marco and Scateni, Riccardo and Attene, Marco},
journal = {ACM Transactions on Graphics (SIGGRAPH Asia 2020)},
year = {2020},
volume = {39},
number = {6},
doi = {10.1145/3414685.3417818}
}