Volver al Inicio Microsoft Student Tech Club: Universidad Libre

Intersección de rectángulos en Visual Basic .NET 2008


Este es el resultado



El código es el siguiente

OJO, debe importar una librería primero

Imports System.Drawing.Drawing2D

Y este es el código que va dentro del paint

' Con las siguientes líneas se puede manejar las características del rectángulo que intersecta.
' La posición del rectángulo en la ventana esta dada por los dos primeros valores en X y Y respectivamente.
' Los dos siguientes valores se usan para modificar el ancho y la altura respectivamente
Dim clipRect As New Rectangle(100, 100, 200, 200)

' Con la siguiente línea de código se controla que solo el área interceptada tome color.
e.Graphics.SetClip(clipRect)

' Se establecen los parámetros del rectángulo que se intersecta.
' Se puede modificar su posicion con respecto al eje X, Y, el ancho y alto respectivamente.
Dim intersectRectF As New RectangleF(250.0, 100.0, 200.0, 200.0)

' Con la siguiente línea se controla que el área intersectada tome color.
' De no colocar esta línea el color se extiende al rectángulo que intersecta.
e.Graphics.IntersectClip(intersectRectF)

' Se rellena el rectángulo para demostrar efectivamente la región de intersección de las dos figuras.
' Con el siguiente código se maneja los parámetros del rectángulo que se genera entre la intersección de los otros dos.
' Se puede modificar el color, la distancia con respecto al eje X y Y del cuadro que se forma en la intersección de las dos figuras.
e.Graphics.FillRectangle(New SolidBrush(Color.Blue), 0, 0, _
500, 500)

' La siguiente línea es para lograr que se visualicen los rectángulos que se intersectan.
e.Graphics.ResetClip()

' Se dibujan el rectángulo que intersecta y el rectángulo que se intersecta.
' Se coloca la herramienta con que se dibuja y el color.
e.Graphics.DrawRectangle(New Pen(Color.Black), clipRect)
e.Graphics.DrawRectangle(New Pen(Color.Red), _
Rectangle.Round(intersectRectF))

 

Volver al Inicio Célula Microsoft. Universidad Libre