Simple and Efficient Mesh Layout with Space-Filling Curves

We provide an in-core implementation of our space-filling curve layout described in our paper. The source code can be compiled under Linux and Mac using GNU Make or Windows using Microsoft NMake. If you are interested in the out-of-core version, please contact Huy for more information.

In this implementation, only a subset of PLY file format is supported for input and output, i.e. binary little endian v1.0, but it should be fairly straight-forward to plug in your own choice of file format. By default, the code will perform Z-order (or Morton order) layout. If Hilbert curve is preferred, please change USE_HILBERT to 1 in sfc.cpp and recompile the code.

Source: sfc.tar.gz

Usage: ./sfc input.ply output.ply