Rectangle.Intersect Metoda
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Rectangle Określa strukturę reprezentującą przecięcie dwóch prostokątów.
Przeciążenia
Intersect(Rectangle, Rectangle) |
Zwraca trzecią Rectangle strukturę reprezentującą przecięcie dwóch innych Rectangle struktur. Jeśli nie ma skrzyżowania, zwracana jest pusta Rectangle wartość. |
Intersect(Rectangle) |
Zastępuje to Rectangle przecięciem siebie i określonym Rectangleelementem . |
Intersect(Rectangle, Rectangle)
- Źródło:
- Rectangle.cs
- Źródło:
- Rectangle.cs
- Źródło:
- Rectangle.cs
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
Parametry
Prostokąt do przecięcia.
Prostokąt do przecięcia.
Zwraca
Obiekt Rectangle reprezentujący część wspólną elementów a
i b
.
Przykłady
Poniższy przykład kodu przedstawia Intersectelementy i IsEmptyIntersectsWith elementy członkowskie. Ten przykład powinien być używany z formularzem systemu Windows. Wklej ten kod w formularzu i wywołaj tę metodę podczas obsługi zdarzenia formularza Paint , przekazując e
jako 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
Dotyczy
Intersect(Rectangle)
- Źródło:
- Rectangle.cs
- Źródło:
- Rectangle.cs
- Źródło:
- Rectangle.cs
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)
Parametry
Przykłady
Poniższy przykład kodu przedstawia Intersectelementy i IsEmptyIntersectsWith elementy członkowskie. Ten przykład powinien być używany z formularzem systemu Windows. Wklej ten kod w formularzu i wywołaj tę metodę podczas obsługi zdarzenia formularza Paint , przekazując e
jako 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