类 | |
| struct | ChainOptions |
| Options shared by the chain-scoped FABRIK solve used by Solver2D / Solver3D. These mirror the knobs of ik::solver plus wrapper-level pose blending. 更多... | |
函数 | |
| template<unsigned D> | |
| bool | solveChain (::ik::skeleton< D > &sk, ::ik::ecs< D > &state, unsigned root_id, unsigned tip_id, const std::vector< typename ::ik::solver< D >::target > &targets, const ChainOptions< D > &opt) |
| FABRIK solve restricted to the bone chain root_id..tip_id. Unlike the plain solver (which pins the skeleton root), the chain root stays at its input position and bones outside the chain are never touched. | |
函数说明
◆ solveChain()
| bool eve::ik::detail::solveChain | ( | ::ik::skeleton< D > & | sk, |
| ::ik::ecs< D > & | state, | ||
| unsigned | root_id, | ||
| unsigned | tip_id, | ||
| const std::vector< typename ::ik::solver< D >::target > & | targets, | ||
| const ChainOptions< D > & | opt | ||
| ) |
FABRIK solve restricted to the bone chain root_id..tip_id. Unlike the plain solver (which pins the skeleton root), the chain root stays at its input position and bones outside the chain are never touched.
Only targets whose bone id lies on the chain participate; the furthest target also acts as the chain goal for the optional pole vector. Returns true when every chain target is within opt.tolerance after solving.
在文件 ChainSolver.h 第 170 行定义.
引用了 eve::ik::detail::ChainOptions< D >::force, eve::ik::detail::ChainOptions< D >::influence, iterations, eve::ik::detail::ChainOptions< D >::max_iterations, eve::ik::detail::ChainOptions< D >::pole, eve::ik::detail::ChainOptions< D >::pole_weight, pos, state, eve::ik::detail::ChainOptions< D >::tolerance , 以及 eve::ik::detail::ChainOptions< D >::use_pole.