Sdílet prostřednictvím


Postupy: Vytvoření kombinované geometrie

Tento příklad ukazuje, jak kombinovat geometrie. Ke kombinování dvou geometrií použijte objekt CombinedGeometry. Nastavte vlastnosti Geometry1 a Geometry2 se dvěma geometriemi, které chcete zkombinovat, a nastavte vlastnost GeometryCombineMode, která určuje, jak budou geometrie sloučeny, Union, Intersect, Excludenebo Xor.

Chcete-li vytvořit složenou geometrii ze dvou nebo více geometrií, použijte GeometryGroup.

Příklad

V následujícím příkladu je definován CombinedGeometry s geometrickým kombinačním režimem Exclude. Oba Geometry1 a Geometry2 jsou definovány jako kruhy stejného poloměru, ale se středy posunuté o 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>

Výsledky režimu kombinování vyloučit
Vyloučení kombinované geometrie

V následujícím kódu je CombinedGeometry definován s kombinačním režimem Intersect. Oba Geometry1 a Geometry2 jsou definovány jako kruhy stejného poloměru, ale se středy posunuté o 50 jednotek.

<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>

Výsledky kombinovaného režimu průniku
Kombinované geometrické průsečíky

V následujícím kódu je CombinedGeometry definován s kombinačním režimem Union. Oba Geometry1 a Geometry2 jsou definovány jako kruhy stejného poloměru, ale se středy posunutými o 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>

Výsledky kombinovaného režimu sjednocení
Sjednocení kombinované geometrie

V následujícím kódu je CombinedGeometry definován s kombinačním režimem Xor. Oba Geometry1 a Geometry2 jsou definovány jako kruhy stejného poloměru, ale se středy posunutými o 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>

Výsledky kombinačního režimu Xoru
Kombinovaný geometrický Xor