PolyFEM
|
#include <SplineParametrizations.hpp>
Public Member Functions | |
BoundedBiharmonicWeights2Dto3D (const int num_control_vertices, const int num_vertices, const Eigen::MatrixXd &V_surface, const Eigen::MatrixXi &F_surface) | |
BoundedBiharmonicWeights2Dto3D (const int num_control_vertices, const int num_vertices, const State &state, const bool allow_rotations) | |
Eigen::VectorXd | inverse_eval (const Eigen::VectorXd &y) override |
int | size (const int x_size) const override |
Eigen::VectorXd | eval (const Eigen::VectorXd &x) const override |
Eigen::VectorXd | apply_jacobian (const Eigen::VectorXd &grad_full, const Eigen::VectorXd &x) const override |
Eigen::MatrixXd | get_bbw_weights () |
Public Member Functions inherited from polyfem::solver::Parametrization | |
Parametrization () | |
virtual | ~Parametrization () |
Private Member Functions | |
void | compute_faces_for_partial_vertices (const Eigen::MatrixXd &V, Eigen::MatrixXi &F) const |
int | optimal_new_control_point_idx (const Eigen::MatrixXd &V, const Eigen::MatrixXi &F, const Eigen::VectorXi &boundary_loop, const std::vector< int > &existing_points) const |
Private Attributes | |
const int | num_control_vertices_ |
const int | num_vertices_ |
Eigen::MatrixXd | control_points_ |
Eigen::MatrixXd | bbw_weights_ |
Eigen::MatrixXd | boundary_bbw_weights_ |
Eigen::MatrixXd | V_surface_ |
Eigen::MatrixXi | F_surface_ |
Eigen::VectorXd | y_start |
bool | invoked_inverse_eval_ = false |
const bool | allow_rotations_ |
Definition at line 70 of file SplineParametrizations.hpp.
|
inline |
Definition at line 73 of file SplineParametrizations.hpp.
polyfem::solver::BoundedBiharmonicWeights2Dto3D::BoundedBiharmonicWeights2Dto3D | ( | const int | num_control_vertices, |
const int | num_vertices, | ||
const State & | state, | ||
const bool | allow_rotations | ||
) |
Definition at line 157 of file SplineParametrizations.cpp.
References polyfem::State::bases, F_surface_, polyfem::State::geom_bases(), polyfem::State::get_vertices(), polyfem::State::mesh, polyfem::State::node_to_primitive(), polyfem::State::total_local_boundary, V, and V_surface_.
|
overridevirtual |
Implements polyfem::solver::Parametrization.
Definition at line 356 of file SplineParametrizations.cpp.
References allow_rotations_, bbw_weights_, control_points_, x, and y_start.
|
private |
Definition at line 374 of file SplineParametrizations.cpp.
References polyfem::F, F_surface_, V, V_surface_, and x.
Referenced by inverse_eval().
|
overridevirtual |
Implements polyfem::solver::Parametrization.
Definition at line 328 of file SplineParametrizations.cpp.
References allow_rotations_, bbw_weights_, boundary_bbw_weights_, control_points_, invoked_inverse_eval_, polyfem::log_and_throw_error(), x, y, and y_start.
Referenced by inverse_eval().
|
inline |
Definition at line 82 of file SplineParametrizations.hpp.
References bbw_weights_.
|
overridevirtual |
Reimplemented from polyfem::solver::Parametrization.
Definition at line 236 of file SplineParametrizations.cpp.
References allow_rotations_, bbw_weights_, boundary_bbw_weights_, compute_faces_for_partial_vertices(), control_points_, eval(), polyfem::F, invoked_inverse_eval_, polyfem::log_and_throw_error(), polyfem::logger(), num_control_vertices_, optimal_new_control_point_idx(), size(), polyfem::utils::unflatten(), V, y, and y_start.
|
private |
Definition at line 192 of file SplineParametrizations.cpp.
References polyfem::F, and V.
Referenced by inverse_eval().
|
inlineoverridevirtual |
Implements polyfem::solver::Parametrization.
Definition at line 78 of file SplineParametrizations.hpp.
References num_vertices_.
Referenced by inverse_eval().
|
private |
Definition at line 102 of file SplineParametrizations.hpp.
Referenced by apply_jacobian(), eval(), and inverse_eval().
|
private |
Definition at line 92 of file SplineParametrizations.hpp.
Referenced by apply_jacobian(), eval(), get_bbw_weights(), and inverse_eval().
|
private |
Definition at line 93 of file SplineParametrizations.hpp.
Referenced by eval(), and inverse_eval().
|
private |
Definition at line 91 of file SplineParametrizations.hpp.
Referenced by apply_jacobian(), eval(), and inverse_eval().
|
private |
Definition at line 96 of file SplineParametrizations.hpp.
Referenced by BoundedBiharmonicWeights2Dto3D(), and compute_faces_for_partial_vertices().
|
private |
Definition at line 100 of file SplineParametrizations.hpp.
Referenced by eval(), and inverse_eval().
|
private |
Definition at line 89 of file SplineParametrizations.hpp.
Referenced by inverse_eval().
|
private |
Definition at line 90 of file SplineParametrizations.hpp.
Referenced by size().
|
private |
Definition at line 95 of file SplineParametrizations.hpp.
Referenced by BoundedBiharmonicWeights2Dto3D(), and compute_faces_for_partial_vertices().
|
private |
Definition at line 98 of file SplineParametrizations.hpp.
Referenced by apply_jacobian(), eval(), and inverse_eval().