Практическое руководство. Создание объединенных геометрических объектов
В этом примере показано, как для объединения геометрических объектов. Чтобы объединить два геометрических объекта, используйте CombinedGeometry объекта. Задать его Geometry1 и Geometry2 свойства два геометрических объекта для объединения и установить GeometryCombineMode свойство, которое определяет, каким образом геометрические объекты будут объединяться, чтобы Union, Intersect, Exclude, или Xor.
Чтобы создать составной геометрический объект из двух или более геометрических объектов, используйте GeometryGroup.
Пример
В следующем примере CombinedGeometry определяется с режимом объединения геометрических Exclude. Оба 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>
Исключить объединенных геометрических объектов
В следующей разметке CombinedGeometry определяется с режимом объединения Intersect. Оба 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>
Intersect объединенных геометрических объектов
В следующей разметке CombinedGeometry определяется с режимом объединения Union. Оба 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>
Объединение объединенных геометрических объектов
В следующей разметке CombinedGeometry определяется с режимом объединения Xor. Оба 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>
Xor объединенных геометрических объектов