算法描述
Input: points 𝒃0,𝒃1,…𝒃n∈R3
Output: curve x(t),t∈[0,1]
过程示例
Repeated convex combination of control points
b(r)i=(1−t)b(r−1)i+tb(r−1)i+1
点 b(0)0,b(1)0,b(2)0,b(3)0是曲线b(0)0,b(3)0的控制点。
例子
给定3个点,画Bezier曲线
把起点看作是t=0时刻,终点看作是t=1时刻,画Bezier曲线,相当于求t=[0,1]区间时pt所在的位置。把范围所有时刻的pt连起来就是Bezier曲线。
- 算出b0b1中的t位置的点为b10
- 算出b1b2中的t位置的点为b11
- ab连成一条线,算是ab中的t位置的点为b20
- b20是 Pt 的位置,
给定4个点,画Bezier曲线
[23:24]
总结
- 给定t,计算Bezier曲线x(t)上参数为t的点
[30:18]局限性:一次只能针对一个t值计算。
- 良好的几何意义:该点将曲线一分两条子Bezier 曲线,其控制顶点是中间生成的点
- 可用于Bezier曲线的离散及求根等许多应用
本文出自CaterpillarStudyGroup,转载请注明出处。 https://caterpillarstudygroup.github.io/GAMES102_mdbook/