我想修改 WPF 椭圆的半长轴,因为我需要创建一个看起来像鸡蛋的椭圆。此外,我需要用 ImageBrush 填充椭圆,因此使用 DrawingBrush 的 Grid 并不是一个真正的选择。任何想法我怎么能做到这一点?
更新
就像克莱门斯建议的那样,这里有一个我喜欢的图片链接:)
椭圆有 aWidth
和 a Height
。两者中较大的一个定义长轴,其中一半称为半长轴。
Ellipse 可以通过其Fill
属性用 ImageBrush 填充。
<Ellipse Width="400" Height="300">
<Ellipse.Fill>
<ImageBrush ImageSource="C:\Users\Public\Pictures\Sample Pictures\Jellyfish.jpg"/>
</Ellipse.Fill>
</Ellipse>
另一种方法是使用带有 的 Path EllipseGeometry
,它具有RadiusX
和RadiusY
属性。其中较大的一个直接定义了半长轴。
<Path>
<Path.Data>
<EllipseGeometry RadiusX="200" RadiusY="150"/>
</Path.Data>
<Path.Fill>
<ImageBrush ImageSource="C:\Users\Public\Pictures\Sample Pictures\Jellyfish.jpg"/>
</Path.Fill>
</Path>
为了创建不对称的蛋状形状,您可以像这样组合两个椭圆弧段:
<Path Data="M 0,-150 A 150,150 0 1 0 0,150 A 200,150 0 0 0 0,-150">
<Path.Fill>
<ImageBrush ImageSource="C:\Users\Public\Pictures\Sample Pictures\Jellyfish.jpg"/>
</Path.Fill>
</Path>