Rectangle.Intersect Rectangle.Intersect Rectangle.Intersect Rectangle.Intersect Method

Определение

Определяет структуру Rectangle, представляющую собой пересечение двух прямоугольников.Determines the Rectangle structure that represents the intersection of two rectangles.

Перегрузки

Intersect(Rectangle, Rectangle) Intersect(Rectangle, Rectangle) Intersect(Rectangle, Rectangle) Intersect(Rectangle, Rectangle)

Возвращает третью структуру Rectangle, представляющую собой пересечение двух других структур Rectangle.Returns a third Rectangle structure that represents the intersection of two other Rectangle structures. Если пересечение отсутствует, возвращается пустая структура Rectangle.If there is no intersection, an empty Rectangle is returned.

Intersect(Rectangle) Intersect(Rectangle) Intersect(Rectangle) Intersect(Rectangle)

Заменяет данный объект Rectangle его пересечением с указанным прямоугольником Rectangle.Replaces this Rectangle with the intersection of itself and the specified Rectangle.

Intersect(Rectangle, Rectangle) Intersect(Rectangle, Rectangle) Intersect(Rectangle, Rectangle) Intersect(Rectangle, Rectangle)

Возвращает третью структуру Rectangle, представляющую собой пересечение двух других структур Rectangle.Returns a third Rectangle structure that represents the intersection of two other Rectangle structures. Если пересечение отсутствует, возвращается пустая структура Rectangle.If there is no intersection, an empty Rectangle is returned.

public:
 static System::Drawing::Rectangle Intersect(System::Drawing::Rectangle a, System::Drawing::Rectangle b);
public static System.Drawing.Rectangle Intersect (System.Drawing.Rectangle a, System.Drawing.Rectangle b);
static member Intersect : System.Drawing.Rectangle * System.Drawing.Rectangle -> System.Drawing.Rectangle
Public Shared Function Intersect (a As Rectangle, b As Rectangle) As Rectangle

Параметры

a
Rectangle Rectangle Rectangle Rectangle

Прямоугольник для пересечения.A rectangle to intersect.

b
Rectangle Rectangle Rectangle Rectangle

Прямоугольник для пересечения.A rectangle to intersect.

Возвраты

Объект Rectangle, представляющий собой пересечение параметров a и b.A Rectangle that represents the intersection of a and b.

Примеры

В следующем примере кода демонстрируются Intersect IntersectsWith элементы IsEmpty , и.The following code example demonstrates the Intersect, IsEmpty and the IntersectsWith members. Этот пример следует использовать с формой Windows Forms.This example should be used with a Windows Form. Вставьте этот код в форму и вызовите этот метод при обработке Paint события формы, передав e его как PaintEventArgs.Paste this code into a form and call this method when handling the form's Paint event, passing e as PaintEventArgs.

private:
   void StaticRectangleIntersection( PaintEventArgs^ e )
   {
      Rectangle rectangle1 = Rectangle(50,50,200,100);
      Rectangle rectangle2 = Rectangle(70,20,100,200);
      e->Graphics->DrawRectangle( Pens::Black, rectangle1 );
      e->Graphics->DrawRectangle( Pens::Red, rectangle2 );
      if ( rectangle1.IntersectsWith( rectangle2 ) )
      {
         Rectangle rectangle3 = Rectangle::Intersect( rectangle1, rectangle2 );
         if (  !rectangle3.IsEmpty )
         {
            e->Graphics->FillRectangle( Brushes::Green, rectangle3 );
         }
      }
   }
private void StaticRectangleIntersection(PaintEventArgs e)
{
    Rectangle rectangle1 = new Rectangle(50, 50, 200, 100);
    Rectangle rectangle2 = new Rectangle(70, 20, 100, 200);
    Rectangle rectangle3 = new Rectangle();

    e.Graphics.DrawRectangle(Pens.Black, rectangle1);
    e.Graphics.DrawRectangle(Pens.Red, rectangle2);

    if (rectangle1.IntersectsWith(rectangle2))
    {
        rectangle3 = Rectangle.Intersect(rectangle1, rectangle2);
        if (!rectangle3.IsEmpty)
        {
            e.Graphics.FillRectangle(Brushes.Green, rectangle3);
        }
    }
}
Private Sub StaticRectangleIntersection(ByVal e As PaintEventArgs)
    Dim rectangle1 As New Rectangle(50, 50, 200, 100)
    Dim rectangle2 As New Rectangle(70, 20, 100, 200)
    Dim rectangle3 As New Rectangle

    e.Graphics.DrawRectangle(Pens.Black, rectangle1)
    e.Graphics.DrawRectangle(Pens.Red, rectangle2)

    If (rectangle1.IntersectsWith(rectangle2)) Then
        rectangle3 = Rectangle.Intersect(rectangle1, rectangle2)
        If Not rectangle3.IsEmpty Then
            e.Graphics.FillRectangle(Brushes.Green, rectangle3)
        End If
    End If
End Sub

Intersect(Rectangle) Intersect(Rectangle) Intersect(Rectangle) Intersect(Rectangle)

Заменяет данный объект Rectangle его пересечением с указанным прямоугольником Rectangle.Replaces this Rectangle with the intersection of itself and the specified Rectangle.

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

Параметры

rect
Rectangle Rectangle Rectangle Rectangle

Объект Rectangle, с которым происходит пересечение.The Rectangle with which to intersect.

Примеры

В следующем примере кода демонстрируются Intersect IntersectsWith элементы IsEmpty , и.The following code example demonstrates the Intersect, IsEmpty and the IntersectsWith members. Этот пример следует использовать с формой Windows Forms.This example should be used with a Windows Form. Вставьте этот код в форму и вызовите этот метод при обработке Paint события формы, передав e его как PaintEventArgs.Paste this code into a form and call this method when handling the form's Paint event, passing e as PaintEventArgs.

private:
   void InstanceRectangleIntersection( PaintEventArgs^ e )
   {
      Rectangle rectangle1 = Rectangle(50,50,200,100);
      Rectangle rectangle2 = Rectangle(70,20,100,200);
      e->Graphics->DrawRectangle( Pens::Black, rectangle1 );
      e->Graphics->DrawRectangle( Pens::Red, rectangle2 );
      if ( rectangle1.IntersectsWith( rectangle2 ) )
      {
         rectangle1.Intersect( rectangle2 );
         if (  !rectangle1.IsEmpty )
         {
            e->Graphics->FillRectangle( Brushes::Green, rectangle1 );
         }
      }
   }
private void InstanceRectangleIntersection(PaintEventArgs e)
{

    Rectangle rectangle1 = new Rectangle(50, 50, 200, 100);
    Rectangle rectangle2 = new Rectangle(70, 20, 100, 200);

    e.Graphics.DrawRectangle(Pens.Black, rectangle1);
    e.Graphics.DrawRectangle(Pens.Red, rectangle2);

    if (rectangle1.IntersectsWith(rectangle2))
    {
        rectangle1.Intersect(rectangle2);
        if (!rectangle1.IsEmpty)
        {
            e.Graphics.FillRectangle(Brushes.Green, rectangle1);
        }
    }
}
Private Sub InstanceRectangleIntersection( _
    ByVal e As PaintEventArgs)

    Dim rectangle1 As New Rectangle(50, 50, 200, 100)
    Dim rectangle2 As New Rectangle(70, 20, 100, 200)

    e.Graphics.DrawRectangle(Pens.Black, rectangle1)
    e.Graphics.DrawRectangle(Pens.Red, rectangle2)

    If (rectangle1.IntersectsWith(rectangle2)) Then
        rectangle1.Intersect(rectangle2)
        If Not (rectangle1.IsEmpty) Then
            e.Graphics.FillRectangle(Brushes.Green, rectangle1)
        End If
    End If
End Sub

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