Region.Xor Метод

Определение

Заменяет объект Region разностью его объединения и пересечения с указанным объектом GraphicsPath.

Перегрузки

Xor(GraphicsPath)

Заменяет данную область Region разностью ее объединения и пересечения с указанным контуром GraphicsPath.

Xor(Rectangle)

Заменяет данную область Region разностью ее объединения и пересечения с указанной структурой Rectangle.

Xor(RectangleF)

Заменяет данную область Region разностью ее объединения и пересечения с указанной структурой RectangleF.

Xor(Region)

Заменяет данную область Region разностью ее объединения и пересечения с указанным контуром Region.

Xor(GraphicsPath)

Исходный код:
Region.cs
Исходный код:
Region.cs
Исходный код:
Region.cs

Заменяет данную область Region разностью ее объединения и пересечения с указанным контуром GraphicsPath.

public:
 void Xor(System::Drawing::Drawing2D::GraphicsPath ^ path);
public void Xor (System.Drawing.Drawing2D.GraphicsPath path);
member this.Xor : System.Drawing.Drawing2D.GraphicsPath -> unit
Public Sub Xor (path As GraphicsPath)

Параметры

path
GraphicsPath

Контур GraphicsPath для выполнения операции Xor с этой областью Region.

Исключения

path имеет значение null.

Примеры

Пример кода см. в методах Xor(RectangleF) и Complement(GraphicsPath) .

Применяется к

Xor(Rectangle)

Исходный код:
Region.cs
Исходный код:
Region.cs
Исходный код:
Region.cs

Заменяет данную область Region разностью ее объединения и пересечения с указанной структурой Rectangle.

public:
 void Xor(System::Drawing::Rectangle rect);
public void Xor (System.Drawing.Rectangle rect);
member this.Xor : System.Drawing.Rectangle -> unit
Public Sub Xor (rect As Rectangle)

Параметры

rect
Rectangle

Структура Rectangle для выполнения операции Xor с данной областью Region.

Примеры

Пример кода см. в методе Xor(RectangleF) .

Применяется к

Xor(RectangleF)

Исходный код:
Region.cs
Исходный код:
Region.cs
Исходный код:
Region.cs

Заменяет данную область Region разностью ее объединения и пересечения с указанной структурой RectangleF.

public:
 void Xor(System::Drawing::RectangleF rect);
public void Xor (System.Drawing.RectangleF rect);
member this.Xor : System.Drawing.RectangleF -> unit
Public Sub Xor (rect As RectangleF)

Параметры

rect
RectangleF

Структура RectangleF для выполнения операции Xor(GraphicsPath) с данной областью Region.

Примеры

Следующий пример кода предназначен для использования с Windows Forms и требует PaintEventArgse, который является параметром обработчика Paint событий. Код выполняет следующие действия.

  • Создает первый прямоугольник и рисует его на экране черным цветом.

  • Создает второй прямоугольник и рисует его на экране красным цветом.

  • Создает область с помощью первого прямоугольника.

  • Xor Возвращает область для в myRegion сочетании с complementRect.

  • Заполняет область синим Xor цветом и рисует ее на экране.

Обратите внимание, что оба прямоугольника заполнены синим цветом, за исключением области перекрытия.

void XorExample( PaintEventArgs^ e )
{
   // Create the first rectangle and draw it to the screen in black.
   Rectangle regionRect = Rectangle(20,20,100,100);
   e->Graphics->DrawRectangle( Pens::Black, regionRect );

   // create the second rectangle and draw it to the screen in red.
   RectangleF xorRect = RectangleF(90,30,100,100);
   e->Graphics->DrawRectangle( Pens::Red, Rectangle::Round( xorRect ) );

   // Create a region using the first rectangle.
   System::Drawing::Region^ myRegion = gcnew System::Drawing::Region( regionRect );

   // Get the area of overlap for myRegion when combined with
   // complementRect.
   myRegion->Xor( xorRect );

   // Fill the Xor area of myRegion with blue.
   SolidBrush^ myBrush = gcnew SolidBrush( Color::Blue );
   e->Graphics->FillRegion( myBrush, myRegion );
}
public void XorExample(PaintEventArgs e)
{
             
    // Create the first rectangle and draw it to the screen in black.
    Rectangle regionRect = new Rectangle(20, 20, 100, 100);
    e.Graphics.DrawRectangle(Pens.Black, regionRect);
             
    // create the second rectangle and draw it to the screen in red.
    RectangleF xorRect = new RectangleF(90, 30, 100, 100);
    e.Graphics.DrawRectangle(Pens.Red,
        Rectangle.Round(xorRect));
             
    // Create a region using the first rectangle.
    Region myRegion = new Region(regionRect);
             
    // Get the area of overlap for myRegion when combined with
             
    // complementRect.
    myRegion.Xor(xorRect);
             
    // Fill the Xor area of myRegion with blue.
    SolidBrush myBrush = new SolidBrush(Color.Blue);
    e.Graphics.FillRegion(myBrush, myRegion);
}
Public Sub XorExample(ByVal e As PaintEventArgs)

    ' Create the first rectangle and draw it to the screen in black.
    Dim regionRect As New Rectangle(20, 20, 100, 100)
    e.Graphics.DrawRectangle(Pens.Black, regionRect)

    ' create the second rectangle and draw it to the screen in red.
    Dim xorRect As New RectangleF(90, 30, 100, 100)
    e.Graphics.DrawRectangle(Pens.Red, Rectangle.Round(xorRect))

    ' Create a region using the first rectangle.
    Dim myRegion As New [Region](regionRect)

    ' Get the area of overlap for myRegion when combined with
    ' complementRect.
    myRegion.Xor(xorRect)

    ' Fill the intersection area of myRegion with blue.
    Dim myBrush As New SolidBrush(Color.Blue)
    e.Graphics.FillRegion(myBrush, myRegion)
End Sub

Применяется к

Xor(Region)

Исходный код:
Region.cs
Исходный код:
Region.cs
Исходный код:
Region.cs

Заменяет данную область Region разностью ее объединения и пересечения с указанным контуром Region.

public:
 void Xor(System::Drawing::Region ^ region);
public void Xor (System.Drawing.Region region);
member this.Xor : System.Drawing.Region -> unit
Public Sub Xor (region As Region)

Параметры

region
Region

Контур Region для выполнения операции Xor с этой областью Region.

Исключения

region имеет значение null.

Примеры

Пример кода см. в методах Xor(RectangleF) и Complement(GraphicsPath) .

Применяется к