在Photoshop中我们可以使用钢笔工具创建贝塞尔曲线,当我们编辑完成的曲线时,我们可以在曲线上添加点,在混合中相同。 现在我用wpf创建了一个bezier路径,如何在其上添加点,特殊问题是我无法计算新点的控制点。 请帮帮我,谢谢。
答案 0 :(得分:0)
Photoshop所做的不是“添加控制点”,因为这会提高曲线的顺序并改变曲率;相反,它将三次曲线分成两条三次曲线C1和C2,C1的终点和C2的起点是相同的坐标。
如果WPF没有在API中内置曲线分割,那么您可能需要自己实现曲线分割。这很直接;有关DIY的解释,请参阅http://pomax.github.io/bezierinfo/#splitting
唯一的挑战是找到你点击的坐标的“t”值,最简单的解决方案就是在1/100或1/1000步中从t = 0:1生成曲线,并记录每个t值的x / y坐标。这为您提供了一个查找表,可以在需要拆分曲线时进行即时查找。