Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/22.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/wpf/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/three.js/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
.net 将点集传递到Bezier曲线_.net_Wpf_Drawing_Bezier - Fatal编程技术网

.net 将点集传递到Bezier曲线

.net 将点集传递到Bezier曲线,.net,wpf,drawing,bezier,.net,Wpf,Drawing,Bezier,在我的WPF应用程序中,我正在研究一种绘图机制,以便在图像顶部进行注释。目前,我有绘制路径的功能,其中绘制的路径将包含从图形中收集的点。更详细地说,我在通过MouseMoved事件收集StylusPoints时将其添加到InkPresenter。InkPresenter被设置为画布的子对象,画布将保存图形。我也可以在路径中画一条线段,如果有什么不同的话 我这幅画的问题是画得不顺。因此,我希望生成的曲线表示为贝塞尔曲线。这是一种技术,例如在Adobe Illustrator中使用。现在;有办法解决

在我的WPF应用程序中,我正在研究一种绘图机制,以便在图像顶部进行注释。目前,我有绘制路径的功能,其中绘制的路径将包含从图形中收集的点。更详细地说,我在通过MouseMoved事件收集StylusPoints时将其添加到InkPresenter。InkPresenter被设置为画布的子对象,画布将保存图形。我也可以在路径中画一条线段,如果有什么不同的话


我这幅画的问题是画得不顺。因此,我希望生成的曲线表示为贝塞尔曲线。这是一种技术,例如在Adobe Illustrator中使用。现在;有办法解决这个问题吗?首先构建一组表示绘制的凹凸曲线的点,然后将其转换为类似于绘制曲线的贝塞尔曲线

Charles Petzold在MSDN杂志上关于数据模板折线图的文章的示例代码中有一个类CanonicalSpline


该类的key方法从一组点创建PathGeometry。

如果要将曲线拟合到一组点,请考虑样条曲线(Bezier是其中的子集)

,很容易扩展到n。这来自唐·兰卡斯特的古鲁巢穴,那里有一套很好的证据