使用贝塞尔曲线的正弦曲线的WPF路径描述

时间:2014-08-21 10:15:34

标签: wpf curve sine

我需要绘制一条正弦曲线(从x = 0到2pi)作为DrawingVisual的一部分,并希望使用WPF的基本路径功能来获得平滑的曲线。可能我需要某种贝塞尔曲线。不幸的是,我甚至不知道它们是如何工作的。 (只是他们能够以某种方式拉动"线路朝向控制点。)

有人可以告诉我应该使用哪些坐标来使它看起来正确吗?

如果我想稍微伸展一下,我可以应用一个ScaleTransform,所以正常的形式会很好。

MSDN论坛中的一个帖子让我陷入了维基百科科学深处的公式混乱中。我没有学过数学,所以对我没用多少。

1 个答案:

答案 0 :(得分:2)

没关系,我和Kaxaml玩了一会儿,发现这很漂亮。它可能已经有点拉长了,但它使得情节更容易识别。

<Page
  xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
  xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
  <Grid>  
    <Path Data="M0,100 L50,0 L50,200 L100,100" Stroke="Gray" StrokeThickness="0.5"/>
    <Path Data="M0,100 C50,0  50,200  100,100" Stroke="Red" StrokeThickness="3"/>
  </Grid>
</Page>

第一个路径(灰色)显示使用的控制点以及它们在同一水平偏移上的位置;第二个路径(红色,粗体)显示最终的贝塞尔曲线。

这就是它的样子:

enter image description here