Graphics.IntersectClip Método
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Sobrecargas
IntersectClip(Rectangle) |
Actualiza la región del clip de este Graphics a la intersección de la región del clip actual y la estructura de Rectangle especificada. |
IntersectClip(RectangleF) |
Actualiza la región del clip de este Graphics a la intersección de la región del clip actual y la estructura de RectangleF especificada. |
IntersectClip(Region) |
Actualiza la región del clip de esta Graphics a la intersección de la región del clip actual y el Regionespecificado. |
IntersectClip(Rectangle)
- Source:
- Graphics.cs
- Source:
- Graphics.cs
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)
Parámetros
Ejemplos
El ejemplo de código siguiente está diseñado para su uso con Windows Forms y requiere PaintEventArgse
, que es un parámetro del controlador de eventos Paint. El código realiza las siguientes acciones:
Crea un rectángulo con la esquina superior izquierda en (0, 0) y establece la región de recorte en este rectángulo.
Crea un segundo rectángulo con la esquina superior izquierda en (100, 100) y establece la región de recorte en la intersección de este rectángulo y la región de recorte actual (el primer rectángulo).
Rellena un rectángulo grande que incluye ambos rectángulos anteriores con un pincel azul sólido.
Restablece la región de recorte a infinita.
Dibuja rectángulos alrededor de las dos regiones de recorte. Usa un lápiz negro para el primer rectángulo de recorte y un lápiz rojo para la segunda región de recorte.
El resultado es que solo la intersección de los dos rectángulos se rellena con azul.
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
Comentarios
Este método asigna a la propiedad Clip de este Graphics el área representada por la intersección de la región del clip actual y el rectángulo especificado por el parámetro rect
.
Se aplica a
IntersectClip(RectangleF)
- Source:
- Graphics.cs
- Source:
- Graphics.cs
Actualiza la región del clip de este Graphics a la intersección de la región del clip actual y la estructura de RectangleF especificada.
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)
Parámetros
- rect
- RectangleF
RectangleF estructura que se va a intersecr con la región del clip actual.
Ejemplos
El ejemplo de código siguiente está diseñado para su uso con Windows Forms y requiere PaintEventArgse
, que es un parámetro del controlador de eventos Paint. El código realiza las siguientes acciones:
Crea un rectángulo con la esquina superior izquierda en (0, 0) y establece la región de recorte en este rectángulo.
Crea un segundo rectángulo con la esquina superior izquierda en (100, 100) y establece la región de recorte en la intersección de este rectángulo y la región de recorte actual (el primer rectángulo).
Rellena un rectángulo grande que incluye ambos rectángulos anteriores con un pincel azul sólido.
Restablece la región de recorte a infinita.
Dibuja rectángulos alrededor de las dos regiones de recorte. Usa un lápiz negro para el primer rectángulo de recorte y un lápiz rojo para la segunda región de recorte.
El resultado es que solo la intersección de los dos rectángulos se rellena con azul.
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
Comentarios
Este método asigna a la propiedad Clip de este Graphics el área representada por la intersección de la región del clip actual y el rectángulo especificado por el parámetro rect
.
Se aplica a
IntersectClip(Region)
- Source:
- Graphics.cs
- Source:
- Graphics.cs
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)
Parámetros
Ejemplos
El ejemplo de código siguiente está diseñado para su uso con Windows Forms y requiere PaintEventArgse
, que es un parámetro del controlador de eventos Paint. El código realiza las siguientes acciones:
Crea un rectángulo con la esquina superior izquierda en (0, 0).
Crea una región y la establece en el rectángulo y establece la región de recorte en esta región.
Crea un segundo rectángulo con la esquina superior izquierda en (100, 100).
Crea una región y la establece en el segundo rectángulo y establece la región de recorte en la intersección de esta región y la región de recorte actual (el primer rectángulo) mediante un modo de combinación de Replace.
Rellena un rectángulo grande que incluye ambas regiones anteriores con un pincel azul sólido.
Restablece la región de recorte a infinita.
Dibuja rectángulos alrededor de las dos regiones de recorte. Usa un lápiz negro para la primera región de recorte y un lápiz rojo para la segunda región de recorte.
El resultado es que solo la intersección de las dos regiones se rellena con azul.
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
Comentarios
Este método asigna a la propiedad Clip de este Graphics el área representada por la intersección de la región del clip actual y la región especificada por el parámetro region
.