6#include <SimTKcommon/SmallMatrix.h>
29 template<std::
floating_po
int T>
100 template<std::
floating_po
int T>
104 const SimTK::Vec<3, T>& weight_,
105 const SimTK::Vec<3, T>& control_point_) :
130 template<std::
floating_po
int T>
138 SimTK::Vec<3, T>
a1 = {T{0.0}, T{0.0}, T{0.0}};
139 SimTK::Vec<3, T>
a2 = {T{1.0}, T{0.0}, T{0.0}};
140 SimTK::Vec<3, T>
a3 = {T{0.0}, T{1.0}, T{0.0}};
141 SimTK::Vec<3, T>
a4 = {T{0.0}, T{0.0}, T{1.0}};
166 cpp23::mdspan<
const double, cpp23::extents<size_t, std::dynamic_extent, 3>, cpp23::layout_stride> source_landmarks,
167 cpp23::mdspan<
const double, cpp23::extents<size_t, std::dynamic_extent, 3>, cpp23::layout_stride> destination_landmarks,
168 double warping_penalty = 0.0
176 const SimTK::Vec<3, float>& p
184 const SimTK::Vec<3, double>&
198 const SimTK::Vec<3, float>& p,
199 float linear_interpolant
205 std::span<
const SimTK::Vec<3, float>>,
206 float linear_interpolant
212 std::span<SimTK::Vec<3, float>>,
213 float linear_interpolant
219 float linear_interpolant
Definition component_registry.h:14
void tps3d_warp_points_in_place(const TPSCoefficients3D< float > &, std::span< SimTK::Vec< 3, float > >, float linear_interpolant)
osc::Mesh tps3d_warp_mesh(TPSCoefficients3D< float > &, const osc::Mesh &, float linear_interpolant)
TPSCoefficients3D< float > tps3d_solve_coefficients(const TPSCoefficientSolverInputs3D< float > &)
SimTK::Vec< 3, float > tps3d_warp_point(const TPSCoefficients3D< float > &, const SimTK::Vec< 3, float > &p)
std::ostream & operator<<(std::ostream &out, const DataFrame &data_frame)
Writes a pretty-printed representation of data_frame to out.
std::vector< SimTK::Vec< 3, float > > tps3d_warp_points(const TPSCoefficients3D< float > &, std::span< const SimTK::Vec< 3, float > >, float linear_interpolant)
Definition landmark_pair_3d.h:14
SimTK::Vec< 3, T > a1
Definition tps3d.h:138
friend bool operator==(const TPSCoefficients3D &, const TPSCoefficients3D &)=default
SimTK::Vec< 3, T > a3
Definition tps3d.h:140
SimTK::Vec< 3, T > a4
Definition tps3d.h:141
SimTK::Vec< 3, T > a2
Definition tps3d.h:139
std::vector< TPSNonAffineTerm3D< T > > non_affine_terms
Definition tps3d.h:142
TPSCoefficients3D()=default
friend bool operator==(const TPSNonAffineTerm3D &, const TPSNonAffineTerm3D &)=default
SimTK::Vec< 3, T > control_point
Definition tps3d.h:114
TPSNonAffineTerm3D(const SimTK::Vec< 3, T > &weight_, const SimTK::Vec< 3, T > &control_point_)
Definition tps3d.h:103
SimTK::Vec< 3, T > weight
Definition tps3d.h:113