|   |      1 
                                  2
                             控制以给定角度穿过Bezier点的点位于该角度的切线上。 选择的控制点越远,产生的弯曲越软,因此有许多不同的解决方案,具有相同的角度和不同的曲率。。 
 要找到两个贝塞尔点具有相同软曲率的控制点,只需找到两条切线的交点!将交叉点用作两段的公共控制点,即C1=C2。 对于任何类型的对称曲线,需要保持交叉点的偏差对称,即50%、10%等。。 注意,为了优化整体形状,还需要查看相邻点;一般来说,提供的GDI功能表现良好;因此,值得考虑简单地添加更多贝塞尔点来控制形状;当然,使用一组完美的控制点是最经济的解决方案。 更新: 我已经添加了一个示例,演示了中的数学如何很好地近似圆(橙色) this interesting post . 
   简而言之:精确的解决方案不太可能,但四分之一圆的最佳拟合是将控制点移动到交叉点的约0.55%。(
   
     
   代码使用
    
   顺便说一句:将椭圆/圆添加到
    |