Bagikan melalui


Graphics.IntersectClip Metode

Definisi

Memperbarui wilayah klip ini Graphics ke persimpangan wilayah klip saat ini dan struktur yang ditentukan Rectangle .

Overload

Nama Deskripsi
IntersectClip(Rectangle)

Memperbarui wilayah klip ini Graphics ke persimpangan wilayah klip saat ini dan struktur yang ditentukan Rectangle .

IntersectClip(RectangleF)

Memperbarui wilayah klip ini Graphics ke persimpangan wilayah klip saat ini dan struktur yang ditentukan RectangleF .

IntersectClip(Region)

Memperbarui wilayah klip ini Graphics ke persimpangan wilayah klip saat ini dan yang ditentukan Region.

IntersectClip(Rectangle)

Sumber:
Graphics.cs
Sumber:
Graphics.cs
Sumber:
Graphics.cs
Sumber:
Graphics.cs
Sumber:
Graphics.cs
Sumber:
Graphics.cs
Sumber:
Graphics.cs
Sumber:
Graphics.cs

Memperbarui wilayah klip ini Graphics ke persimpangan wilayah klip saat ini dan struktur yang ditentukan Rectangle .

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

Parameter

rect
Rectangle

Rectangle struktur untuk berpotongan dengan wilayah klip saat ini.

Contoh

Contoh kode berikut dirancang untuk digunakan dengan Windows Forms, dan memerlukan PaintEventArgse, yang merupakan parameter penanganan Paint aktivitas. Kode melakukan tindakan berikut:

  • Membuat persegi panjang dengan sudut kiri atas pada (0, 0) dan mengatur wilayah kliping ke persegi ini.

  • Membuat persegi panjang kedua dengan sudut kiri atas pada (100, 100) dan mengatur wilayah kliping ke persimpangan persegi panjang ini dan wilayah kliping saat ini (persegi panjang pertama).

  • Mengisi persegi panjang besar yang mencakup kedua persegi panjang sebelumnya dengan kuas biru solid.

  • Mereset wilayah kliping ke tak terbatas.

  • Menggambar persegi panjang di sekitar dua wilayah kliping. Ini menggunakan pena hitam untuk kliping persegi panjang pertama dan pena merah untuk wilayah kliping kedua.

Hasilnya adalah bahwa hanya persimpangan dua persegi panjang yang diisi dengan biru.

public:
   void IntersectClipRectangle( PaintEventArgs^ e )
   {
      // Set clipping region.
      Rectangle clipRect = Rectangle(0,0,200,200);
      e->Graphics->SetClip( clipRect );

      // Update clipping region to intersection of
      // existing region with specified rectangle.
      Rectangle intersectRect = Rectangle(100,100,200,200);
      e->Graphics->IntersectClip( intersectRect );

      // Fill rectangle to demonstrate effective clipping region.
      e->Graphics->FillRectangle( gcnew SolidBrush( Color::Blue ), 0, 0, 500, 500 );

      // Reset clipping region to infinite.
      e->Graphics->ResetClip();

      // Draw clipRect and intersectRect to screen.
      e->Graphics->DrawRectangle( gcnew Pen( Color::Black ), clipRect );
      e->Graphics->DrawRectangle( gcnew Pen( Color::Red ), intersectRect );
   }
private void IntersectClipRectangle(PaintEventArgs e)
{

    // Set clipping region.
    Rectangle clipRect = new Rectangle(0, 0, 200, 200);
    e.Graphics.SetClip(clipRect);

    // Update clipping region to intersection of

    // existing region with specified rectangle.
    Rectangle intersectRect = new Rectangle(100, 100, 200, 200);
    e.Graphics.IntersectClip(intersectRect);

    // Fill rectangle to demonstrate effective clipping region.
    e.Graphics.FillRectangle(new SolidBrush(Color.Blue), 0, 0, 500, 500);

    // Reset clipping region to infinite.
    e.Graphics.ResetClip();

    // Draw clipRect and intersectRect to screen.
    e.Graphics.DrawRectangle(new Pen(Color.Black), clipRect);
    e.Graphics.DrawRectangle(new Pen(Color.Red), intersectRect);
}
Private Sub IntersectClipRectangle(ByVal e As PaintEventArgs)

    ' Set clipping region.
    Dim clipRect As New Rectangle(0, 0, 200, 200)
    e.Graphics.SetClip(clipRect)

    ' Update clipping region to intersection of

    ' existing region with specified rectangle.
    Dim intersectRect As New Rectangle(100, 100, 200, 200)
    e.Graphics.IntersectClip(intersectRect)

    ' Fill rectangle to demonstrate effective clipping region.
    e.Graphics.FillRectangle(New SolidBrush(Color.Blue), 0, 0, _
    500, 500)

    ' Reset clipping region to infinite.
    e.Graphics.ResetClip()

    ' Draw clipRect and intersectRect to screen.
    e.Graphics.DrawRectangle(New Pen(Color.Black), clipRect)
    e.Graphics.DrawRectangle(New Pen(Color.Red), intersectRect)
End Sub

Keterangan

Metode ini menetapkan ke Clip properti area yang Graphics diwakili oleh persimpangan wilayah klip saat ini dan persegi panjang yang ditentukan oleh rect parameter .

Berlaku untuk

IntersectClip(RectangleF)

Sumber:
Graphics.cs
Sumber:
Graphics.cs
Sumber:
Graphics.cs
Sumber:
Graphics.cs
Sumber:
Graphics.cs
Sumber:
Graphics.cs
Sumber:
Graphics.cs
Sumber:
Graphics.cs

Memperbarui wilayah klip ini Graphics ke persimpangan wilayah klip saat ini dan struktur yang ditentukan RectangleF .

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

Parameter

rect
RectangleF

RectangleF struktur untuk berpotongan dengan wilayah klip saat ini.

Contoh

Contoh kode berikut dirancang untuk digunakan dengan Windows Forms, dan memerlukan PaintEventArgse, yang merupakan parameter penanganan Paint aktivitas. Kode melakukan tindakan berikut:

  • Membuat persegi panjang dengan sudut kiri atas pada (0, 0) dan mengatur wilayah kliping ke persegi ini.

  • Membuat persegi panjang kedua dengan sudut kiri atas pada (100, 100) dan mengatur wilayah kliping ke persimpangan persegi panjang ini dan wilayah kliping saat ini (persegi panjang pertama).

  • Mengisi persegi panjang besar yang mencakup kedua persegi panjang sebelumnya dengan kuas biru solid.

  • Mereset wilayah kliping ke tak terbatas.

  • Menggambar persegi panjang di sekitar dua wilayah kliping. Ini menggunakan pena hitam untuk kliping persegi panjang pertama dan pena merah untuk wilayah kliping kedua.

Hasilnya adalah bahwa hanya persimpangan dua persegi panjang yang diisi dengan biru.

public:
   void IntersectClipRectangleF1( PaintEventArgs^ e )
   {
      // Set clipping region.
      Rectangle clipRect = Rectangle(0,0,200,200);
      e->Graphics->SetClip( clipRect );

      // Update clipping region to intersection of
      // existing region with specified rectangle.
      RectangleF intersectRectF = RectangleF(100.0F,100.0F,200.0F,200.0F);
      e->Graphics->IntersectClip( intersectRectF );

      // Fill rectangle to demonstrate effective clipping region.
      e->Graphics->FillRectangle( gcnew SolidBrush( Color::Blue ), 0, 0, 500, 500 );

      // Reset clipping region to infinite.
      e->Graphics->ResetClip();

      // Draw clipRect and intersectRect to screen.
      e->Graphics->DrawRectangle( gcnew Pen( Color::Black ), clipRect );
      e->Graphics->DrawRectangle( gcnew Pen( Color::Red ), Rectangle::Round( intersectRectF ) );
   }
private void IntersectClipRectangleF1(PaintEventArgs e)
{

    // Set clipping region.
    Rectangle clipRect = new Rectangle(0, 0, 200, 200);
    e.Graphics.SetClip(clipRect);

    // Update clipping region to intersection of

    // existing region with specified rectangle.
    RectangleF intersectRectF = new RectangleF(100.0F, 100.0F, 200.0F, 200.0F);
    e.Graphics.IntersectClip(intersectRectF);

    // Fill rectangle to demonstrate effective clipping region.
    e.Graphics.FillRectangle(new SolidBrush(Color.Blue), 0, 0, 500, 500);

    // Reset clipping region to infinite.
    e.Graphics.ResetClip();

    // Draw clipRect and intersectRect to screen.
    e.Graphics.DrawRectangle(new Pen(Color.Black), clipRect);
    e.Graphics.DrawRectangle(new Pen(Color.Red), Rectangle.Round(intersectRectF));
}
Private Sub IntersectClipRectangleF1(ByVal e As PaintEventArgs)

    ' Set clipping region.
    Dim clipRect As New Rectangle(0, 0, 200, 200)
    e.Graphics.SetClip(clipRect)

    ' Update clipping region to intersection of

    ' existing region with specified rectangle.
    Dim intersectRectF As New RectangleF(100.0F, 100.0F, 200.0F, 200.0F)
    e.Graphics.IntersectClip(intersectRectF)

    ' Fill rectangle to demonstrate effective clipping region.
    e.Graphics.FillRectangle(New SolidBrush(Color.Blue), 0, 0, _
    500, 500)

    ' Reset clipping region to infinite.
    e.Graphics.ResetClip()

    ' Draw clipRect and intersectRect to screen.
    e.Graphics.DrawRectangle(New Pen(Color.Black), clipRect)
    e.Graphics.DrawRectangle(New Pen(Color.Red), _
    Rectangle.Round(intersectRectF))
End Sub

Keterangan

Metode ini menetapkan ke Clip properti area yang Graphics diwakili oleh persimpangan wilayah klip saat ini dan persegi panjang yang ditentukan oleh rect parameter .

Berlaku untuk

IntersectClip(Region)

Sumber:
Graphics.cs
Sumber:
Graphics.cs
Sumber:
Graphics.cs
Sumber:
Graphics.cs
Sumber:
Graphics.cs
Sumber:
Graphics.cs
Sumber:
Graphics.cs
Sumber:
Graphics.cs

Memperbarui wilayah klip ini Graphics ke persimpangan wilayah klip saat ini dan yang ditentukan Region.

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

Parameter

region
Region

Region untuk bersinggungan dengan wilayah saat ini.

Contoh

Contoh kode berikut dirancang untuk digunakan dengan Windows Forms, dan memerlukan PaintEventArgse, yang merupakan parameter penanganan Paint aktivitas. Kode melakukan tindakan berikut:

  • Membuat persegi panjang dengan sudut kiri atas pada (0, 0).

  • Membuat wilayah dan mengaturnya ke persegi panjang, dan mengatur wilayah kliping ke wilayah ini.

  • Membuat persegi panjang kedua dengan sudut kiri atas pada (100, 100).

  • Membuat wilayah dan mengaturnya ke persegi panjang kedua, dan mengatur wilayah kliping ke persimpangan wilayah ini dan wilayah kliping saat ini (persegi panjang pertama) menggunakan mode gabungan .Replace

  • Mengisi persegi panjang besar yang mencakup kedua wilayah sebelumnya dengan kuas biru solid.

  • Mereset wilayah kliping ke tak terbatas.

  • Menggambar persegi panjang di sekitar dua wilayah kliping. Ini menggunakan pena hitam untuk wilayah kliping pertama dan pena merah untuk wilayah kliping kedua.

Hasilnya adalah bahwa hanya persimpangan kedua wilayah yang diisi dengan biru.

public:
   void IntersectClipRegion( PaintEventArgs^ e )
   {
      // Set clipping region.
      Rectangle clipRect = Rectangle(0,0,200,200);
      System::Drawing::Region^ clipRegion = gcnew System::Drawing::Region( clipRect );
      e->Graphics->SetClip( clipRegion, CombineMode::Replace );

      // Update clipping region to intersection of
      // existing region with specified rectangle.
      Rectangle intersectRect = Rectangle(100,100,200,200);
      System::Drawing::Region^ intersectRegion = gcnew System::Drawing::Region( intersectRect );
      e->Graphics->IntersectClip( intersectRegion );

      // Fill rectangle to demonstrate effective clipping region.
      e->Graphics->FillRectangle( gcnew SolidBrush( Color::Blue ), 0, 0, 500, 500 );

      // Reset clipping region to infinite.
      e->Graphics->ResetClip();

      // Draw clipRect and intersectRect to screen.
      e->Graphics->DrawRectangle( gcnew Pen( Color::Black ), clipRect );
      e->Graphics->DrawRectangle( gcnew Pen( Color::Red ), intersectRect );
   }
private void IntersectClipRegion(PaintEventArgs e)
{

    // Set clipping region.
    Rectangle clipRect = new Rectangle(0, 0, 200, 200);
    Region clipRegion = new Region(clipRect);
    e.Graphics.SetClip(clipRegion, CombineMode.Replace);

    // Update clipping region to intersection of

    // existing region with specified rectangle.
    Rectangle intersectRect = new Rectangle(100, 100, 200, 200);
    Region intersectRegion = new Region(intersectRect);
    e.Graphics.IntersectClip(intersectRegion);

    // Fill rectangle to demonstrate effective clipping region.
    e.Graphics.FillRectangle(new SolidBrush(Color.Blue), 0, 0, 500, 500);

    // Reset clipping region to infinite.
    e.Graphics.ResetClip();

    // Draw clipRect and intersectRect to screen.
    e.Graphics.DrawRectangle(new Pen(Color.Black), clipRect);
    e.Graphics.DrawRectangle(new Pen(Color.Red), intersectRect);
}
Private Sub IntersectClipRegion(ByVal e As PaintEventArgs)

    ' Set clipping region.
    Dim clipRect As New Rectangle(0, 0, 200, 200)
    Dim clipRegion As New [Region](clipRect)
    e.Graphics.SetClip(clipRegion, CombineMode.Replace)

    ' Update clipping region to intersection of

    ' existing region with specified rectangle.
    Dim intersectRect As New Rectangle(100, 100, 200, 200)
    Dim intersectRegion As New [Region](intersectRect)
    e.Graphics.IntersectClip(intersectRegion)

    ' Fill rectangle to demonstrate effective clipping region.
    e.Graphics.FillRectangle(New SolidBrush(Color.Blue), 0, 0, _
    500, 500)

    ' Reset clipping region to infinite.
    e.Graphics.ResetClip()

    ' Draw clipRect and intersectRect to screen.
    e.Graphics.DrawRectangle(New Pen(Color.Black), clipRect)
    e.Graphics.DrawRectangle(New Pen(Color.Red), intersectRect)
End Sub

Keterangan

Metode ini menetapkan ke Clip properti ini Graphics area yang diwakili oleh persimpangan wilayah klip saat ini dan wilayah yang ditentukan oleh region parameter.

Berlaku untuk