几何法
Two Bones IK(二维情况)
- 确定target的可达范围

首先根据ab和bc的长度确定target的可达范围
其中,at最长可以为ab + bc
最短需要简单分类讨论下,当ab > bc的时候,最短为ab - bc;当ab = bc的时候,最短为0;当ab < bc的时候,最短为bc - ab
因此,最短的情况综合起来是abs(ab - bc)
∴|at|∈[abs(ab - bc),ab + bc]
- 利用点积计算初始状态的夹角

其中∠α0_{0}0=acos(AC⋅AB∣AC∣∣AB∣)acos(\tfrac{AC·AB}{|AC||AB|})acos(∣AC∣∣AB∣AC⋅AB)
其中∠β0_{0}0=acos(BA⋅BC∣BA∣∣BC∣)acos(\tfrac{BA·BC}{|BA||BC|})acos(∣BA∣∣BC∣BA⋅BC)
- 计算当|at| = |ac| 时的∠α1{_1}1和∠β1{_1}1
这里要把a看成圆点,然后利用|at| = |ac|这个条件使用余弦定理去计算

其中∠α1_{1}

——TwoBones IK&spm=1001.2101.3001.5002&articleId=126100440&d=1&t=3&u=7e7d6a52e15e4a6faaeb1dc405f3c148)
1957

被折叠的 条评论
为什么被折叠?



