|
Blender V4.3
|
Classes | |
| struct | GeometryData |
| struct | MatrixTransfer |
| struct | MatrixTransferChart |
| struct | PinnedVertexData |
| struct | SLIMData |
| class | SlimFailedException |
Typedefs | |
| typedef std::unique_ptr< SLIMData > | SLIMDataPtr |
Functions | |
| static void | correct_geometry_size (double surface_area_to_map_area_ratio, MatrixXd &vertex_positions, double desired_surface_area_to_map_ration) |
| template<typename VertexPositionType , typename FaceIndicesType > | |
| static double | compute_surface_area (const VertexPositionType v, const FaceIndicesType f) |
| void | correct_map_surface_area_if_necessary (SLIMData &slim_data) |
| void | correct_mesh_surface_area_if_necessary (SLIMData &slim_data) |
| template<typename DerivedV , typename DerivedF , typename DerivedC > | |
| static void | cotmatrix_entries (const Eigen::PlainObjectBase< DerivedV > &V, const Eigen::PlainObjectBase< DerivedF > &F, Eigen::PlainObjectBase< DerivedC > &C) |
| template<typename DerivedV , typename DerivedF , typename Scalar > | |
| void | cotmatrix (const Eigen::PlainObjectBase< DerivedV > &V, const Eigen::PlainObjectBase< DerivedF > &F, Eigen::SparseMatrix< Scalar > &L) |
| template<typename DerivedX , typename DerivedY , typename DerivedIX > | |
| static void | doublearea_sort3 (const Eigen::PlainObjectBase< DerivedX > &X, const int dim, const bool ascending, Eigen::PlainObjectBase< DerivedY > &Y, Eigen::PlainObjectBase< DerivedIX > &IX) |
| template<typename DerivedV , typename DerivedF , typename DeriveddblA > | |
| void | doublearea (const Eigen::PlainObjectBase< DerivedV > &V, const Eigen::PlainObjectBase< DerivedF > &F, Eigen::PlainObjectBase< DeriveddblA > &dblA) |
| template<typename Derivedl , typename DeriveddblA > | |
| void | doublearea (const Eigen::PlainObjectBase< Derivedl > &ul, Eigen::PlainObjectBase< DeriveddblA > &dblA) |
| template<typename DerivedV , typename DerivedF , typename DerivedL > | |
| void | edge_lengths (const Eigen::PlainObjectBase< DerivedV > &V, const Eigen::PlainObjectBase< DerivedF > &F, Eigen::PlainObjectBase< DerivedL > &L) |
| template<typename DerivedV , typename DerivedF , typename DerivedL > | |
| void | squared_edge_lengths (const Eigen::PlainObjectBase< DerivedV > &V, const Eigen::PlainObjectBase< DerivedF > &F, Eigen::PlainObjectBase< DerivedL > &L) |
| static double | line_search (Eigen::MatrixXd &x, const Eigen::MatrixXd &d, double step_size, std::function< double(Eigen::MatrixXd &)> energy, double cur_energy=-1) |
| static double | get_smallest_pos_quad_zero (double a, double b, double c) |
| static double | get_min_pos_root_2D (const Eigen::MatrixXd &uv, const Eigen::MatrixXi &F, Eigen::MatrixXd &d, int f) |
| static double | compute_max_step_from_singularities (const Eigen::MatrixXd &uv, const Eigen::MatrixXi &F, Eigen::MatrixXd &d) |
| double | flip_avoiding_line_search (const Eigen::MatrixXi F, Eigen::MatrixXd &cur_v, Eigen::MatrixXd &dst_v, std::function< double(Eigen::MatrixXd &)> energy, double cur_energy) |
| static void | create_weights_per_face (SLIMData &slim_data) |
| static void | apply_transformation (SLIMData &slim_data, Matrix2d &transformation_matrix) |
| static void | apply_translation (SLIMData &slim_data, Vector2d &translation_vector) |
| static void | retrieve_positions_of_pinned_vertices_in_initialization (const MatrixXd &all_uv_positions_in_initialization, const VectorXi &indices_of_pinned_vertices, MatrixXd &position_of_pinned_vertices_in_initialization) |
| static void | flip_input_geometry (SLIMData &slim_data) |
| static void | compute_centroid (const MatrixXd &point_cloud, Vector2d ¢roid) |
| static void | compute_least_squares_scaling (MatrixXd centered_pins, MatrixXd centered_initialized_pins, Matrix2d &transformation_matrix) |
| static void | comput_least_squares_rotation_scale_only (SLIMData &slim_data, Vector2d &translation_vector, Matrix2d &transformation_matrix, bool is_flip_allowed) |
| static void | compute_transformation_matrix2_pins (const SLIMData &slim_data, Matrix2d &transformation_matrix) |
| static void | compute_translation1_pin (const SLIMData &slim_data, Vector2d &translation_vector) |
| static void | transform_initialized_map (SLIMData &slim_data) |
| static bool | is_translation_needed (const SLIMData &slim_data) |
| void | transform_initialization_if_necessary (SLIMData &slim_data) |
| template<typename DerivedV , typename DerivedF > | |
| static void | grad (const Eigen::PlainObjectBase< DerivedV > &V, const Eigen::PlainObjectBase< DerivedF > &F, Eigen::SparseMatrix< typename DerivedV::Scalar > &G, bool uniform=false) |
| template<typename DerivedA , typename DerivedR , typename DerivedT , typename DerivedU , typename DerivedS , typename DerivedV > | |
| static void | polar_svd (const Eigen::PlainObjectBase< DerivedA > &A, Eigen::PlainObjectBase< DerivedR > &R, Eigen::PlainObjectBase< DerivedT > &T, Eigen::PlainObjectBase< DerivedU > &U, Eigen::PlainObjectBase< DerivedS > &S, Eigen::PlainObjectBase< DerivedV > &V) |
| static void | 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) |
| static void | compute_weighted_jacobians (SLIMData &s, const Eigen::MatrixXd &uv) |
| static void | compute_unweighted_jacobians (SLIMData &s, const Eigen::MatrixXd &uv) |
| static void | compute_jacobians (SLIMData &s, const Eigen::MatrixXd &uv) |
| static void | update_weights_and_closest_rotations (SLIMData &s, Eigen::MatrixXd &uv) |
| template<typename DerivedV , typename DerivedF > | |
| static void | local_basis (const Eigen::PlainObjectBase< DerivedV > &V, const Eigen::PlainObjectBase< DerivedF > &F, Eigen::PlainObjectBase< DerivedV > &B1, Eigen::PlainObjectBase< DerivedV > &B2, Eigen::PlainObjectBase< DerivedV > &B3) |
| static void | pre_calc (SLIMData &s) |
| static void | buildA (SLIMData &s, Eigen::SparseMatrix< double > &A) |
| static void | buildRhs (SLIMData &s, const Eigen::SparseMatrix< double > &At) |
| static void | add_soft_constraints (SLIMData &s, Eigen::SparseMatrix< double > &L) |
| static void | build_linear_system (SLIMData &s, Eigen::SparseMatrix< double > &L) |
| static double | compute_energy_with_jacobians (SLIMData &s, const Eigen::MatrixXd &Ji, Eigen::VectorXd &areas, Eigen::VectorXd &singularValues, bool gatherSingularValues) |
| static double | compute_soft_const_energy (SLIMData &s, Eigen::MatrixXd &V_o) |
| static double | compute_energy (SLIMData &s, Eigen::MatrixXd &V_new, Eigen::VectorXd &singularValues, bool gatherSingularValues) |
| static double | compute_energy (SLIMData &s, Eigen::MatrixXd &V_new) |
| static double | compute_energy (SLIMData &s, Eigen::MatrixXd &V_new, Eigen::VectorXd &singularValues) |
| void | slim_precompute (Eigen::MatrixXd &V, Eigen::MatrixXi &F, Eigen::MatrixXd &V_init, SLIMData &data, SLIMData::SLIM_ENERGY slim_energy, Eigen::VectorXi &b, Eigen::MatrixXd &bc, double soft_p) |
| double | computeGlobalScaleInvarianceFactor (Eigen::VectorXd &singularValues, Eigen::VectorXd &areas) |
| static void | solve_weighted_arap (SLIMData &s, Eigen::MatrixXd &uv) |
| Eigen::MatrixXd | slim_solve (SLIMData &data, int iter_num) |
| static void | transfer_uvs_back_to_native_part (MatrixTransferChart &chart, Eigen::MatrixXd &uv) |
| static Eigen::MatrixXd | get_interactive_result_blended_with_original (float blend, const SLIMData &slim_data) |
| static void | adjust_pins (SLIMData &slim_data, const PinnedVertexData &pinned_vertex_data) |
| static double | compute_angle (const Eigen::Vector3d &a, const Eigen::Vector3d &b) |
| static void | find_vertex_to_opposite_angles_correspondence (const Eigen::MatrixXi &f, const Eigen::MatrixXd &v, Eigen::SparseMatrix< double > &vertex_to_face_indices) |
| static void | find_vertex_to_its_angles_correspondence (const Eigen::MatrixXi &f, const Eigen::MatrixXd &v, Eigen::SparseMatrix< double > &vertex_to_face_indices) |
| void | convex_border_parameterization (const Eigen::MatrixXi &f, const Eigen::MatrixXd &v, const Eigen::MatrixXi &e, const Eigen::VectorXd &el, const Eigen::VectorXi &bnd, const Eigen::MatrixXd &bnd_uv, Eigen::MatrixXd &uv, Method method) |
| void | mvc (const Eigen::MatrixXi &f, const Eigen::MatrixXd &v, const Eigen::MatrixXi &e, const Eigen::VectorXd &el, const Eigen::VectorXi &bnd, const Eigen::MatrixXd &bnd_uv, Eigen::MatrixXd &uv) |
| void | harmonic (const Eigen::MatrixXi &f, const Eigen::MatrixXd &v, const Eigen::MatrixXi &e, const Eigen::VectorXd &el, const Eigen::VectorXi &bnd, const Eigen::MatrixXd &bnd_uv, Eigen::MatrixXd &uv) |
| void | tutte (const Eigen::MatrixXi &f, const Eigen::MatrixXd &v, const Eigen::MatrixXi &e, const Eigen::VectorXd &el, const Eigen::VectorXi &bnd, const Eigen::MatrixXd &bnd_uv, Eigen::MatrixXd &uv) |
| void | map_vertices_to_convex_border (Eigen::MatrixXd &vertex_positions) |
| static void | get_flips (const Eigen::MatrixXi &f, const Eigen::MatrixXd &uv, std::vector< int > &flip_idx) |
| int | count_flips (const Eigen::MatrixXi &f, const Eigen::MatrixXd &uv) |
| void | harmonic (const Eigen::MatrixXd &v, const Eigen::MatrixXi &f, const Eigen::MatrixXi &B, const Eigen::MatrixXd &bnd_uv, int power_of_harmonic_operaton, Eigen::MatrixXd &UV) |
| typedef std::unique_ptr<SLIMData> slim::SLIMDataPtr |
Definition at line 18 of file slim_matrix_transfer.h.
|
inlinestatic |
Definition at line 516 of file slim.cpp.
References BLI_assert, and L.
Referenced by build_linear_system().
|
static |
Definition at line 51 of file slim_parametrizer.cpp.
References slim::SLIMData::b, slim::SLIMData::bc, slim::PinnedVertexData::pinned_vertex_indices, slim::PinnedVertexData::pinned_vertex_positions_2D, slim::PinnedVertexData::selected_pins, and slim::SLIMData::valid.
Referenced by slim::MatrixTransfer::parametrize_live().
|
static |
Definition at line 21 of file least_squares_relocator.cpp.
References BLI_assert, slim::SLIMData::V_o, and slim::SLIMData::valid.
Referenced by transform_initialized_map().
|
static |
Definition at line 30 of file least_squares_relocator.cpp.
References BLI_assert, slim::SLIMData::V_o, and slim::SLIMData::valid.
Referenced by transform_initialized_map().
|
inlinestatic |
Definition at line 529 of file slim.cpp.
References A, add_soft_constraints(), BLI_assert, buildA(), buildRhs(), and L.
Referenced by solve_weighted_arap().
Definition at line 442 of file slim.cpp.
References BLI_assert.
Referenced by build_linear_system().
Definition at line 490 of file slim.cpp.
References BLI_assert.
Referenced by build_linear_system().
|
static |
Definition at line 111 of file least_squares_relocator.cpp.
References slim::SLIMData::b, slim::SLIMData::bc, BLI_assert, compute_centroid(), compute_least_squares_scaling(), flip_input_geometry(), retrieve_positions_of_pinned_vertices_in_initialization(), slim::SLIMData::V_o, and slim::SLIMData::valid.
Referenced by transform_initialized_map().
|
static |
Definition at line 16 of file uv_initializer.cpp.
References b.
Referenced by find_vertex_to_its_angles_correspondence(), and find_vertex_to_opposite_angles_correspondence().
|
static |
Definition at line 61 of file least_squares_relocator.cpp.
Referenced by comput_least_squares_rotation_scale_only().
Definition at line 634 of file slim.cpp.
References BLI_assert, and compute_energy().
|
inlinestatic |
Definition at line 641 of file slim.cpp.
References BLI_assert, and compute_energy().
|
inlinestatic |
Definition at line 623 of file slim.cpp.
References BLI_assert, compute_energy_with_jacobians(), compute_jacobians(), and compute_soft_const_energy().
Referenced by compute_energy(), compute_energy(), slim_precompute(), and slim_solve().
|
inlinestatic |
Definition at line 552 of file slim.cpp.
References slim::SLIMData::ARAP, BLI_assert, slim::SLIMData::CONFORMAL, exp(), slim::SLIMData::EXP_CONFORMAL, slim::SLIMData::EXP_SYMMETRIC_DIRICHLET, log(), slim::SLIMData::LOG_ARAP, polar_svd(), pow(), and slim::SLIMData::SYMMETRIC_DIRICHLET.
Referenced by compute_energy().
|
inlinestatic |
Definition at line 260 of file slim.cpp.
References BLI_assert, compute_unweighted_jacobians(), and compute_weighted_jacobians().
Referenced by compute_energy(), and update_weights_and_closest_rotations().
|
static |
Definition at line 94 of file least_squares_relocator.cpp.
References abs().
Referenced by comput_least_squares_rotation_scale_only().
|
inlinestatic |
Definition at line 140 of file flip_avoiding_line_search.cpp.
References get_min_pos_root_2D(), and min.
Referenced by flip_avoiding_line_search().
Definition at line 613 of file slim.cpp.
References BLI_assert, and e.
Referenced by compute_energy().
|
static |
Definition at line 31 of file area_compensation.cpp.
References doublearea(), and v.
Referenced by correct_map_surface_area_if_necessary(), and correct_mesh_surface_area_if_necessary().
|
static |
Definition at line 158 of file least_squares_relocator.cpp.
References slim::SLIMData::b, slim::SLIMData::bc, BLI_assert, pow(), sqrt(), slim::SLIMData::V_o, and slim::SLIMData::valid.
Referenced by transform_initialized_map().
|
static |
Definition at line 181 of file least_squares_relocator.cpp.
References slim::SLIMData::b, slim::SLIMData::bc, BLI_assert, slim::SLIMData::V_o, and slim::SLIMData::valid.
Referenced by transform_initialized_map().
|
inlinestatic |
|
inlinestatic |
|
inline |
| void slim::convex_border_parameterization | ( | const Eigen::MatrixXi & | f, |
| const Eigen::MatrixXd & | v, | ||
| const Eigen::MatrixXi & | e, | ||
| const Eigen::VectorXd & | el, | ||
| const Eigen::VectorXi & | bnd, | ||
| const Eigen::MatrixXd & | bnd_uv, | ||
| Eigen::MatrixXd & | uv, | ||
| Method | method ) |
Definition at line 93 of file uv_initializer.cpp.
References b, e, find_vertex_to_its_angles_correspondence(), find_vertex_to_opposite_angles_correspondence(), HARMONIC, MVC, TUTTE, v, and z().
Referenced by harmonic(), mvc(), and tutte().
|
static |
Definition at line 21 of file area_compensation.cpp.
References BLI_assert, and sqrt().
Referenced by correct_map_surface_area_if_necessary(), and correct_mesh_surface_area_if_necessary().
| void slim::correct_map_surface_area_if_necessary | ( | SLIMData & | slim_data | ) |
Definition at line 39 of file area_compensation.cpp.
References slim::SLIMData::b, compute_surface_area(), correct_geometry_size(), slim::SLIMData::expectedSurfaceAreaOfResultingMap, slim::SLIMData::F, slim::SLIMData::V_o, and slim::SLIMData::valid.
Referenced by slim::MatrixTransfer::parametrize(), slim::MatrixTransfer::parametrize_live(), and slim::MatrixTransferChart::transfer_uvs_blended().
| void slim::correct_mesh_surface_area_if_necessary | ( | SLIMData & | slim_data | ) |
Definition at line 65 of file area_compensation.cpp.
References slim::SLIMData::b, BLI_assert, compute_surface_area(), correct_geometry_size(), slim::SLIMData::expectedSurfaceAreaOfResultingMap, slim::SLIMData::F, slim::SLIMData::skipInitialization, slim::SLIMData::V, slim::SLIMData::V_o, and slim::SLIMData::valid.
Referenced by slim::GeometryData::construct_slim_data().
|
inline |
Definition at line 57 of file cotmatrix.cpp.
|
inlinestatic |
Definition at line 24 of file cotmatrix.cpp.
References C, doublearea(), l, squared_edge_lengths(), and V.
Referenced by cotmatrix().
| int slim::count_flips | ( | const Eigen::MatrixXi & | f, |
| const Eigen::MatrixXd & | uv ) |
Definition at line 284 of file uv_initializer.cpp.
References get_flips().
|
static |
Definition at line 55 of file geometry_data_retrieval.cpp.
References slim::SLIMData::F, slim::SLIMData::valid, slim::SLIMData::weightInfluence, slim::SLIMData::weightmap, slim::SLIMData::weightPerFaceMap, and slim::SLIMData::withWeightedParameterization.
|
inline |
Definition at line 163 of file doublearea.cpp.
References doublearea_sort3(), l, range, and sqrt().
|
inline |
Definition at line 116 of file doublearea.cpp.
References doublearea(), edge_lengths(), F, l, V, x, and y.
Referenced by compute_surface_area(), cotmatrix_entries(), doublearea(), and slim_precompute().
|
inlinestatic |
Definition at line 36 of file doublearea.cpp.
References b, cast(), range, X, and Y.
Referenced by doublearea().
|
inline |
Definition at line 17 of file edge_lengths.cpp.
References L, squared_edge_lengths(), and V.
Referenced by doublearea().
|
static |
Definition at line 56 of file uv_initializer.cpp.
References compute_angle(), and v.
Referenced by convex_border_parameterization().
|
static |
Definition at line 21 of file uv_initializer.cpp.
References compute_angle(), and v.
Referenced by convex_border_parameterization().
|
inline |
Definition at line 155 of file flip_avoiding_line_search.cpp.
References compute_max_step_from_singularities(), line_search(), and min.
Referenced by slim_solve().
|
static |
Definition at line 52 of file least_squares_relocator.cpp.
References BLI_assert, slim::SLIMData::F, and slim::SLIMData::valid.
Referenced by comput_least_squares_rotation_scale_only().
|
static |
Definition at line 261 of file uv_initializer.cpp.
Referenced by count_flips().
|
static |
Definition at line 43 of file slim_parametrizer.cpp.
References blend, slim::SLIMData::oldUVs, and slim::SLIMData::V_o.
Referenced by slim::MatrixTransferChart::transfer_uvs_blended().
|
inlinestatic |
Definition at line 107 of file flip_avoiding_line_search.cpp.
References b, F, get_smallest_pos_quad_zero(), and v2.
Referenced by compute_max_step_from_singularities().
Definition at line 66 of file flip_avoiding_line_search.cpp.
References b, max, min, pow(), and sqrt().
Referenced by get_min_pos_root_2D().
|
inlinestatic |
| void slim::harmonic | ( | const Eigen::MatrixXd & | v, |
| const Eigen::MatrixXi & | f, | ||
| const Eigen::MatrixXi & | B, | ||
| const Eigen::MatrixXd & | bnd_uv, | ||
| int | power_of_harmonic_operaton, | ||
| Eigen::MatrixXd & | UV ) |
| void slim::harmonic | ( | const Eigen::MatrixXi & | f, |
| const Eigen::MatrixXd & | v, | ||
| const Eigen::MatrixXi & | e, | ||
| const Eigen::VectorXd & | el, | ||
| const Eigen::VectorXi & | bnd, | ||
| const Eigen::MatrixXd & | bnd_uv, | ||
| Eigen::MatrixXd & | uv ) |
Definition at line 222 of file uv_initializer.cpp.
References convex_border_parameterization(), e, HARMONIC, and v.
|
static |
Definition at line 222 of file least_squares_relocator.cpp.
References slim::SLIMData::b, BLI_assert, slim::SLIMData::skipInitialization, and slim::SLIMData::valid.
Referenced by transform_initialization_if_necessary().
|
inlinestatic |
Definition at line 33 of file flip_avoiding_line_search.cpp.
Referenced by flip_avoiding_line_search().
|
inlinestatic |
Definition at line 382 of file slim.cpp.
References F, normalized(), V, and v2.
Referenced by pre_calc().
| void slim::map_vertices_to_convex_border | ( | Eigen::MatrixXd & | vertex_positions | ) |
Definition at line 246 of file uv_initializer.cpp.
| void slim::mvc | ( | const Eigen::MatrixXi & | f, |
| const Eigen::MatrixXd & | v, | ||
| const Eigen::MatrixXi & | e, | ||
| const Eigen::VectorXd & | el, | ||
| const Eigen::VectorXi & | bnd, | ||
| const Eigen::MatrixXd & | bnd_uv, | ||
| Eigen::MatrixXd & | uv ) |
Definition at line 210 of file uv_initializer.cpp.
References convex_border_parameterization(), e, MVC, and v.
|
inlinestatic |
Definition at line 186 of file slim.cpp.
Referenced by compute_energy_with_jacobians(), and update_weights_and_closest_rotations().
|
inlinestatic |
Definition at line 407 of file slim.cpp.
References BLI_assert, compute_surface_gradient_matrix(), and local_basis().
Referenced by slim_precompute().
|
static |
Definition at line 39 of file least_squares_relocator.cpp.
Referenced by comput_least_squares_rotation_scale_only().
| void slim::slim_precompute | ( | Eigen::MatrixXd & | V, |
| Eigen::MatrixXi & | F, | ||
| Eigen::MatrixXd & | V_init, | ||
| SLIMData & | data, | ||
| SLIMData::SLIM_ENERGY | slim_energy, | ||
| Eigen::VectorXi & | b, | ||
| Eigen::MatrixXd & | bc, | ||
| double | soft_p ) |
Definition at line 649 of file slim.cpp.
References b, BLI_assert, compute_energy(), doublearea(), F, pre_calc(), and V.
Referenced by slim::GeometryData::construct_slim_data().
Definition at line 764 of file slim.cpp.
References BLI_assert, compute_energy(), computeGlobalScaleInvarianceFactor(), double(), flip_avoiding_line_search(), solve_weighted_arap(), and update_weights_and_closest_rotations().
Referenced by slim::MatrixTransferChart::try_slim_solve().
|
inlinestatic |
Definition at line 743 of file slim.cpp.
References BLI_assert, build_linear_system(), and L.
Referenced by slim_solve().
|
inline |
Definition at line 26 of file edge_lengths.cpp.
References F, L, range, and V.
Referenced by cotmatrix_entries(), and edge_lengths().
|
static |
Definition at line 28 of file slim_parametrizer.cpp.
References slim::MatrixTransferChart::succeeded, slim::MatrixTransferChart::uv_matrices, and slim::MatrixTransferChart::verts_num.
Referenced by slim::MatrixTransfer::parametrize(), slim::MatrixTransfer::parametrize_live(), and slim::MatrixTransferChart::transfer_uvs_blended().
| void slim::transform_initialization_if_necessary | ( | SLIMData & | slim_data | ) |
Definition at line 230 of file least_squares_relocator.cpp.
References BLI_assert, is_translation_needed(), transform_initialized_map(), and slim::SLIMData::valid.
Referenced by slim::GeometryData::construct_slim_data().
|
static |
Definition at line 187 of file least_squares_relocator.cpp.
References apply_transformation(), apply_translation(), slim::SLIMData::b, BLI_assert, comput_least_squares_rotation_scale_only(), compute_transformation_matrix2_pins(), compute_translation1_pin(), slim::SLIMData::reflection_mode, and slim::SLIMData::valid.
Referenced by transform_initialization_if_necessary().
| void slim::tutte | ( | const Eigen::MatrixXi & | f, |
| const Eigen::MatrixXd & | v, | ||
| const Eigen::MatrixXi & | e, | ||
| const Eigen::VectorXd & | el, | ||
| const Eigen::VectorXi & | bnd, | ||
| const Eigen::MatrixXd & | bnd_uv, | ||
| Eigen::MatrixXd & | uv ) |
Definition at line 234 of file uv_initializer.cpp.
References convex_border_parameterization(), e, TUTTE, and v.
|
inlinestatic |
Definition at line 272 of file slim.cpp.
References slim::SLIMData::ARAP, BLI_assert, compute_jacobians(), slim::SLIMData::CONFORMAL, e, eps, exp(), slim::SLIMData::EXP_CONFORMAL, slim::SLIMData::EXP_SYMMETRIC_DIRICHLET, log(), slim::SLIMData::LOG_ARAP, polar_svd(), pow(), sqrt(), and slim::SLIMData::SYMMETRIC_DIRICHLET.
Referenced by slim_solve().