Kui Wu, Xifeng Gao, Zachary Ferguson, Daniele Panozzo, Cem Yuksel
ACM Transactions on Graphics (Proceedings of SIGGRAPH 2018), 37, 4, 2018
We introduce the first fully automatic pipeline to convert arbitrary 3D shapes into knit models. Our pipeline is based on a global parametrization remeshing pipeline to produce an isotropic quad-dominant mesh aligned with a 2-RoSy field. The knitting directions over the surface are determined using a set of custom topological operations and a two-step global optimization that minimizes the number of irregularities. The resulting mesh is converted into a valid stitch mesh that represents the knit model. The yarn curves are generated from the stitch mesh and the final yarn geometry is computed using a yarn-level relaxation process. Thus, we produce topologically valid models that can be used with a yarn-level simulation. We validate our algorithm by automatically generating knit models from complex 3D shapes and processing over a hundred models with various shapes without any user input or parameter tuning. We also demonstrate applications of our approach for custom knit model generation using fabrication via 3D printing.
http://www.cs.utah.edu/~kwu/stitchmodeling#stitchmeshing
-
Clone the repository into your local machine:
-
Compile the code using CmakeGUI
You need to install Gurobi before compiling the code.
-
Set include directory and lib directory accordingly for gurobi in CMakeLists.txt line 110 and 114.
-
Use CmakeGUI with the correct directory for source code and build.
Note that the CMakeLists.txt is only tested with Visual Studio 2015.
- Open stitch-meshing.exe in build/release
- Open mesh and choose your model
- Surface
- Rosy
- Posy
- Extract
- Label
- Align
- Stitch Meshing
- Output
The remeshing and stitch meshing results will be saved in the same folder as the input model is.
* are included libraries
Stitch Meshing is published under the Lesser GNU Public License (LGPL). That means that you can link it from a program with whatever license you choose. Also, you can modify and redistribute the library, but you must provide the source code for the modified version.
Please cite the following paper if it helps.
@article{Wu:2018:stitchmeshing,
author = {Kui Wu and Xifeng Gao and Zachary Ferguson and Daniele Panozzo and Cem Yuksel},
title = {Stitch Meshing},
journal = {ACM Trans. Graph.},
issue_date = {Aug 2018},
volume = {37},
number = {4},
year = {2018},
publisher = {ACM},
address = {New York, NY, USA},
}