为什么弧角没有影响

时间:2015-07-10 20:41:28

标签: wpf xaml

在WPF Path中,我为Data属性设置了以下值:

Path="M0,0 L300,0 A300,300 X 0 1 210.7,210.7 z"

根据文档,X旋转角度。无论我为X指定了什么值,结果形状都保持不变。我在这里做错了什么?

如果有人想尝试,这是一个简单的可重复样本。只需在Visual Studio中创建一个新的WPF应用程序项目,然后将以下内容粘贴到Window1中:

<Window x:Class="DiagramDesigner.Window1"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" 
    Title="Window2" Height="500" Width="500">
    <Canvas>
        <Path Canvas.Left="100" Canvas.Top="100" Data="M0,0 L300,0 A300,300 X 0 1 210.7,210.7 z" Stroke="Black"></Path>
    </Canvas>
</Window>

键入您想要的任何数字代替上面的X,您将获得相同的结果。

1 个答案:

答案 0 :(得分:0)

绘制的弧是椭圆轮廓的一部分。 WPF从路径中的前一点绘制椭圆的一部分到新点。旋转角度控制旋转圆弧所在椭圆的角度,因为椭圆可能不一定在水平和垂直方向上有长轴和短轴。

在您的情况下,椭圆的X半径和Y半径都是300,因此您有一个圆弧。旋转圆圈无关紧要,它看起来总是一样。因此,如果你想拍摄一个圆弧的圆弧,那么旋转角度没有区别。

为了更清楚地演示非圆形椭圆的情况,请尝试在以下路径中更改角度:

    <Path Canvas.Left="100" Canvas.Top="100" Data="M0,0 A100,50 0 0 1 0,200" Stroke="Green" StrokeThickness="4" />