填写EllipseGeometry

时间:2015-11-06 10:54:20

标签: wpf path geometry

我需要将一些绘图(三角形和圆形)作为一个对象(将其设置为内容)。应该填充三角形,圆圈不应该填充颜色。问题是EllipseGeometry没有IsFilled属性。如果我删除Path中的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 个答案:

答案 0 :(得分:1)

一个简单的技巧是用一个带有两个ArcSegments的非填充PathGeometry替换EllipseGeometry:

<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 :(得分:0)

几何的整个要点是描述一个形状。由于Path负责绘制形状,因此总是从拥有的路径获取笔划和填充。所以你要问的是不可能的。你需要在这里使用两个路径。