Cómo: Crear una geometría combinada
Actualización: noviembre 2007
En este ejemplo se muestra cómo combinar geometrías. Para combinar dos geometrías, utilice un objeto CombinedGeometry. Establezca sus propiedades Geometry1 y Geometry2 en las dos geometrías que desea combinar y establezca la propiedad GeometryCombineMode, que determina cómo se combinarán entre sí las geometrías, en Union, Intersect, Exclude o Xor.
Para crear una geometría compuesta a partir de dos o más geometrías, utilice un objeto GeometryGroup.
Ejemplo
En el ejemplo siguiente, se define un objeto CombinedGeometry con el modo de combinación de geometría Exclude. Tanto Geometry1 como Geometry2 se definen como círculos del mismo radio, pero con los centros desplazados en 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>
Geometría combinada con el valor Exclude
En el marcado siguiente, se define una CombinedGeometry con el modo de combinación Intersect. Tanto Geometry1 como Geometry2 se definen como círculos del mismo radio, pero con los centros desplazados en 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>
Geometría combinada con el valor Intersect
En el marcado siguiente, se define una CombinedGeometry con el modo de combinación Union. Tanto Geometry1 como Geometry2 se definen como círculos del mismo radio, pero con los centros desplazados en 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>
Geometría combinada con el valor Union
En el marcado siguiente, se define una CombinedGeometry con el modo de combinación Xor. Tanto Geometry1 como Geometry2 se definen como círculos del mismo radio, pero con los centros desplazados en 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>
Geometría combinada con el valor Xor