Entradas con la etiqueta ‘graficos’

GDI+, Gráficos en Visual Basic 2005 .NET

Miércoles, 1 de Octubre de 2008

GDI + es la forma de dibujar formas, fuentes, imágenes o cualquier tipo de gráficos en general, en Visual Basic NET.

Primero vamos a crear un nuevo Panel. Ya sabéis, en modo diseño:

 Cuadro de Herramientas->Contenedores->Panel.

También haremos doble click sobre el nuevo Panel creado para que nos haga una declaracion del procedimiento que vamos a utilizar. Que será este:

Sub Panel1_Paint(ByVal sender As System.Object, ByVal e As System.Windows.Forms.PaintEventArgs) Handles Panel1.Paint

‘aquí el código

End Sub

Bien, lo primero que nos toca hacer es crear las variables que nos permitan ‘dibujar’ en el Panel, vamos a utilizar Graphics, Pen y Point.

Dim grafico As Graphics = e.Graphics
Dim p1 As Point
Dim p2 As Point
Dim punta As Pen

Para dibujar una linea en un plano, Visual Basic 2005 .NET necesita saber donde empieza, donde acaba, y como dibujarla.
Eso lo conseguimos con las variables del tipo Point y Pen.Ahora que ya sabemos esto, vamos a inicializar dichas variables: 

 

punta = New Pen(Color.Aqua,1) ‘un ‘lapiz’ del color Aqua
p1 = New Point(0, 1) ‘Point(x,y)
p2 = New Point(10, 11) ‘Point(x,y)

 Al lado, en comentario, he puesto lo que seria el contructor necesario. En los Point no hay mucho misterio, se crean dos puntos, P1(inicio) y P2(final), en un plano, que sera la traza que hara la linea, y se inicializa la variable punta con un Pen del tipo Aqua, que sera azul cian de 1 pixel de grosor.

 Con todo esto solo nos quedaria trazar la linea sobre el Panel.

grafico.DrawLine(punta, p1, p2) ‘ drawline(Pens.Azure,x1,y1,x2,y2)

 

grafico.DrawLine(punta, p1, p2) ‘ drawline(Pens.Azure,x1,y1,x2,y2)

 

Grafico es la variable que hemos declarado e igualado a e.Graphics, recordad que la variable ‘e’ viene siendo algo asi como las propiedades del Panel.
Sobre la clase Graphics hay una serie de métodos para dibujar, en este caso una línea, a la cual le pasamos las variables que antes he comentado, la variable ‘punta’ que contiene el grosor y tipo de pincel, y los puntos p1 y p2, inicio y fin de la linea. En comentarios teneis la declaracion sin tanta variable de por medio, los dos metodos son buenos.