Prusa Slicer 2.6.0
Loading...
Searching...
No Matches
slim.cpp File Reference
#include "slim.h"
#include "boundary_loop.h"
#include "cotmatrix.h"
#include "edge_lengths.h"
#include "grad.h"
#include "local_basis.h"
#include "repdiag.h"
#include "vector_area_matrix.h"
#include "arap.h"
#include "cat.h"
#include "doublearea.h"
#include "per_face_normals.h"
#include "slice_into.h"
#include "volume.h"
#include "polar_svd.h"
#include "flip_avoiding_line_search.h"
#include <iostream>
#include <map>
#include <set>
#include <vector>
#include <Eigen/IterativeLinearSolvers>
#include <Eigen/SparseCholesky>
#include "Timer.h"
#include "sparse_cached.h"
#include "AtA_cached.h"
+ Include dependency graph for slim.cpp:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Namespaces

namespace  igl
 
namespace  igl::slim
 

Functions

IGL_INLINE void igl::slim::compute_surface_gradient_matrix (const Eigen::MatrixXd &V, const Eigen::MatrixXi &F, const Eigen::MatrixXd &F1, const Eigen::MatrixXd &F2, Eigen::SparseMatrix< double > &D1, Eigen::SparseMatrix< double > &D2)
 
IGL_INLINE void igl::slim::buildA (igl::SLIMData &s, std::vector< Eigen::Triplet< double > > &IJV)
 
IGL_INLINE void igl::slim::buildRhs (igl::SLIMData &s, const Eigen::SparseMatrix< double > &A)
 
IGL_INLINE void igl::slim::add_soft_constraints (igl::SLIMData &s, Eigen::SparseMatrix< double > &L)
 
IGL_INLINE double igl::slim::compute_energy (igl::SLIMData &s, Eigen::MatrixXd &V_new)
 
IGL_INLINE double igl::slim::compute_soft_const_energy (igl::SLIMData &s, const Eigen::MatrixXd &V, const Eigen::MatrixXi &F, Eigen::MatrixXd &V_o)
 
IGL_INLINE double igl::slim::compute_energy_with_jacobians (igl::SLIMData &s, const Eigen::MatrixXd &V, const Eigen::MatrixXi &F, const Eigen::MatrixXd &Ji, Eigen::MatrixXd &uv, Eigen::VectorXd &areas)
 
IGL_INLINE void igl::slim::solve_weighted_arap (igl::SLIMData &s, const Eigen::MatrixXd &V, const Eigen::MatrixXi &F, Eigen::MatrixXd &uv, Eigen::VectorXi &soft_b_p, Eigen::MatrixXd &soft_bc_p)
 
IGL_INLINE void igl::slim::update_weights_and_closest_rotations (igl::SLIMData &s, const Eigen::MatrixXd &V, const Eigen::MatrixXi &F, Eigen::MatrixXd &uv)
 
IGL_INLINE void igl::slim::compute_jacobians (igl::SLIMData &s, const Eigen::MatrixXd &uv)
 
IGL_INLINE void igl::slim::build_linear_system (igl::SLIMData &s, Eigen::SparseMatrix< double > &L)
 
IGL_INLINE void igl::slim::pre_calc (igl::SLIMData &s)