如何:创建组合的几何图形
此示例演示如何合并几何图形。 若要合并两个几何图形,请使用 CombinedGeometry 对象。 请将其 Geometry1 和 Geometry2 属性设置为要合并的两个几何图形,并将确定几何图形合并方式的 GeometryCombineMode 属性设置为 Union
、Intersect
、Exclude
或 Xor
。
若要从两个或多个几何图形创建复合几何图形,请使用 GeometryGroup。
示例
以下示例使用几何合并模式 Exclude
定义了 CombinedGeometry。 Geometry1 和 Geometry2 定义为了相同半径的圆形,但中心偏移 50。
<Path Stroke="Black" StrokeThickness="1" Fill="#CCCCFF">
<Path.Data>
<!-- Combines two geometries using the exclude combine mode. -->
<CombinedGeometry GeometryCombineMode="Exclude">
<CombinedGeometry.Geometry1>
<EllipseGeometry RadiusX="50" RadiusY="50" Center="75,75" />
</CombinedGeometry.Geometry1>
<CombinedGeometry.Geometry2>
<EllipseGeometry RadiusX="50" RadiusY="50" Center="125,75" />
</CombinedGeometry.Geometry2>
</CombinedGeometry>
</Path.Data>
</Path>
组合几何图形排除
以下标记使用合并模式 Intersect
定义了 CombinedGeometry。 Geometry1 和 Geometry2 定义为了相同半径的圆形,但中心偏移 50。
<Path Stroke="Black" StrokeThickness="1" Fill="#CCCCFF">
<Path.Data>
<!-- Combines two geometries using the intersect combine mode. -->
<CombinedGeometry GeometryCombineMode="Intersect">
<CombinedGeometry.Geometry1>
<EllipseGeometry RadiusX="50" RadiusY="50" Center="75,75" />
</CombinedGeometry.Geometry1>
<CombinedGeometry.Geometry2>
<EllipseGeometry RadiusX="50" RadiusY="50" Center="125,75" />
</CombinedGeometry.Geometry2>
</CombinedGeometry>
</Path.Data>
</Path>
组合几何图形相交
以下标记使用合并模式 Union
定义了 CombinedGeometry。 Geometry1 和 Geometry2 定义为了相同半径的圆形,但中心偏移 50。
<Path Stroke="Black" StrokeThickness="1" Fill="#CCCCFF">
<Path.Data>
<!-- Combines two geometries using the union combine mode. -->
<CombinedGeometry GeometryCombineMode="Union">
<CombinedGeometry.Geometry1>
<EllipseGeometry RadiusX="50" RadiusY="50" Center="75,75" />
</CombinedGeometry.Geometry1>
<CombinedGeometry.Geometry2>
<EllipseGeometry RadiusX="50" RadiusY="50" Center="125,75" />
</CombinedGeometry.Geometry2>
</CombinedGeometry>
</Path.Data>
</Path>
组合几何图形合并
以下标记使用合并模式 Xor
定义了 CombinedGeometry。 Geometry1 和 Geometry2 定义为了相同半径的圆形,但中心偏移 50。
<Path Stroke="Black" StrokeThickness="1" Fill="#CCCCFF">
<Path.Data>
<!-- Combines two geometries using the XOR combine mode. -->
<CombinedGeometry GeometryCombineMode="Xor">
<CombinedGeometry.Geometry1>
<EllipseGeometry RadiusX="50" RadiusY="50" Center="75,75" />
</CombinedGeometry.Geometry1>
<CombinedGeometry.Geometry2>
<EllipseGeometry RadiusX="50" RadiusY="50" Center="125,75" />
</CombinedGeometry.Geometry2>
</CombinedGeometry>
</Path.Data>
</Path>
组合几何图形异或