Minchen
Minchen
Tutte's initial embedding fails easily for high-res closed meshes with one-point cut. It is good to incorporate https://github.com/hankstag/progressive_embedding
- [ ] Needs to initialize the UV with multi-boundary Tuttes embedding. - [ ] We didn't explicitly support high-genus surfaces with boundaries either. (Note that even if the boundaries...
Can identify it and initialize UV maps for each connected component, locating the charts without overlaps, and start OptCuts. Note that if the components are generated by pre-cutting a closed...
* Eigen dynamic-size matrix -> static-size; * Add std::vector isFixedVert to avoid binary search on std::set fixedVert; * Local update for mesh features and Hessian matrix data structure rather than...
Although we normalized the distortion energy Ed, the gradient of this energy should still be relevant to the surface area. It would be meaningful to see whether an adaptive tolerance...
Sometimes the rounding error might cause a linear solver that requires strict positive definiteness to crash. However the Eigen::SimplicialLDLT we use by default works just fine. A simple trick that...
* move dual solve from main.cpp into another file and make the primal-dual control flow more clear in main.cpp; * move topology descent steps from class TriMesh into another file...
- [ ] establish an online automatic build test - [ ] support easy build on Windows
- [ ] check input UV overlaps based on spatial hash and 2D edge-edge overlap checks - [ ] check input UV genus if recomputing UV is needed (the input...