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

Definition

Bestimmt die Rectangle-Struktur, die die Schnittmenge zweier Rechtecke darstellt.Determines the Rectangle structure that represents the intersection of two rectangles.

Überlädt

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

Gibt eine dritte Rectangle-Struktur zurück, die die Schnittmenge zweier anderer Rectangle-Strukturen darstellt.Returns a third Rectangle structure that represents the intersection of two other Rectangle structures. Wenn keine Schnittmenge vorliegt, wird ein leeres Rectangle zurückgegeben.If there is no intersection, an empty Rectangle is returned.

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

Ersetzt dieses Rectangle durch die Schnittmenge dieses Rechtecks und des angegebenen 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)

Gibt eine dritte Rectangle-Struktur zurück, die die Schnittmenge zweier anderer Rectangle-Strukturen darstellt.Returns a third Rectangle structure that represents the intersection of two other Rectangle structures. Wenn keine Schnittmenge vorliegt, wird ein leeres Rectangle zurückgegeben.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

Parameter

a
Rectangle Rectangle Rectangle Rectangle

Ein Rechteck, mit dem eine Schnittmenge gebildet werden soll.A rectangle to intersect.

b
Rectangle Rectangle Rectangle Rectangle

Ein Rechteck, mit dem eine Schnittmenge gebildet werden soll.A rectangle to intersect.

Gibt zurück

Ein Rectangle, das die Schnittmenge von a und b darstellt.A Rectangle that represents the intersection of a and b.

Beispiele

Im folgenden Codebeispiel werden Intersect IsEmpty die-und- IntersectsWith Member veranschaulicht.The following code example demonstrates the Intersect, IsEmpty and the IntersectsWith members. Dieses Beispiel sollte mit einem Windows Form verwendet werden.This example should be used with a Windows Form. Fügen Sie diesen Code in ein Formular ein, und nennen Sie diese Methode, Paint Wenn Sie das e Ereignis PaintEventArgsdes Formulars behandeln, indem Sie als übergeben.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)

Ersetzt dieses Rectangle durch die Schnittmenge dieses Rechtecks und des angegebenen 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)

Parameter

rect
Rectangle Rectangle Rectangle Rectangle

Das Rectangle, mit dem die Schnittmenge gebildet werden soll.The Rectangle with which to intersect.

Beispiele

Im folgenden Codebeispiel werden Intersect IsEmpty die-und- IntersectsWith Member veranschaulicht.The following code example demonstrates the Intersect, IsEmpty and the IntersectsWith members. Dieses Beispiel sollte mit einem Windows Form verwendet werden.This example should be used with a Windows Form. Fügen Sie diesen Code in ein Formular ein, und nennen Sie diese Methode, Paint Wenn Sie das e Ereignis PaintEventArgsdes Formulars behandeln, indem Sie als übergeben.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

Gilt für: