椭圆几何的填充方法

3

我需要将一些图形(三角形和圆形)作为一个对象进行设置。三角形应该是填充的,而圆形不应该填充颜色。问题在于EllipseGeometry没有IsFilled属性。如果我在路径上删除Fill属性,则两个都不会被填充。如何在一个Path父级中同时拥有填充的PathFigure和未填充的Ellipse?

<Path Stroke="#FFF633FF"
      StrokeThickness="1"
      Fill="#FFF633FF">
    <Path.Data>
        <GeometryGroup>
            <EllipseGeometry Center="6,0"
                             RadiusX="4"
                             RadiusY="4">
            </EllipseGeometry>
            <PathGeometry >
                <PathGeometry.Figures>
                    <PathFigure StartPoint="6,-15" 
                                IsClosed="True">
                        <LineSegment Point="1,-25" />
                        <LineSegment Point="11,-25" />
                    </PathFigure>
                </PathGeometry.Figures>
            </PathGeometry>
        </GeometryGroup>
    </Path.Data>
</Path>
2个回答

1

一个简单的技巧是将EllipseGeometry替换为非填充的PathGeometry,其中包含两个ArcSegments:

<PathGeometry >
    <PathGeometry.Figures>
        <PathFigure StartPoint="2,0" IsFilled="False">
            <ArcSegment Point="10,0" Size="4,4" />
            <ArcSegment Point="2,0" Size="4,4" />
        </PathFigure>
    </PathGeometry.Figures>
</PathGeometry>

1
几何图形的整个意义在于描述形状。描边和填充始终来自所属路径,因为路径负责绘制形状。因此,你所要求的是不可能的。这里需要使用两个路径。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接