Cada mtodo grfico tem sua sada para um formulrio, um picture box ou para o
objeto Printer. Para indicar onde voc quer desenhar , informe antes do mtodo grfico
o nome do objeto usado. Se voc omitir o objeto o VB assume que voc quer desenhar
no formulrio onde o cdigo esta anexado. Ex:
O formulrio atual
Cada rea de desenho tem seu prprio sistema de coordenadas que termina qual
unidade aplicar para as coordenadas.
Podemos desenhar pontos , linhas e formas com os mtodos grficos do VB. Para
desenhar uma linha entre duas coordenadas usamos o mtodo Line que tem a
seguinte sintaxe:
Onde:
Parte Descrio
object Indica o objeto a qual o grfico ser aplicado.
Step Especifica que o ponto inicial das coordenadas relativo a posio atual do grfico dada pe
.
(x1, y1) Valor que indica as coordenadas do ponto inicial para a linha .(A propriedade ScaleMode d
Obrigatrio.
Step Indica que o ponto final das coordenadas relativo para ponto inicial.
(x2, y2) Valor que indica as coordenadas do ponto final da linha a ser desenhada.
color Valor que indica a cor usada para desenhar a linha.Voc pode usar a funo RGB a func
F Se B for usado F indica que a caixa ser preenchida com a mesma cor usada para desenha
Desta forma o VB desenha uma linha que inclue o primeiro ponto final , mas no o
ltimo ponto. Para desenhar o ltimo ponto podemos usar o mtodo Pset:
Os mtodos Pset , Line e Circle podem usar a palavra chave Setp que define que o
local do ponto relativo ao ltimo ponto desenhado; O VB adiciona os valores de x e y
ao ltimo ponto desenhado. Ex:
[object.]Cls
Um dos primeiros conceitos que voc deve compreender ao trabalhar com grficos no
VB o conceito de escala. O tamanho de um objeto ou grfico na tela depende da
unidade de medida que voc escolheu para cri-lo. As unidades de medidas mais
usadas so : polegadas , centmetros , milmetros e pixels. Alm destas medidas o VB
suporta outras unidades de medidas que servem para medir o tamanho de um objeto
so elas:
Points - 72 points formam uma polegada. Geralmente usada para fontes de texto.
Twips - Existem 1440 twips em uma polegada. Esta medida fornece mais preciso
para medidas do que Points ( 1 twip = 1/20 de um Point) , tornando possvel
grficos mais precisos.
Characters - Utiliza twips fixos : 120 twips na horizontal por 240 twips na vertical .
No muito utilizada.
User - Tipo definido pelo usurio. Uma unidade muito poderosa que voc pode usar
como uma escala. Voc define o nmero de unidades dentro da rea ( altura : de
cima at embaixo e largura : da esquerda para a direita).
Junto com esta propriedades a propriedade ScaleMode identifica qual unidade vai ser
usada. Desde que voc defina a propriedade ScaleMode o VB ajusta as propriedades
de tamanho da rea para se adequar a seleo definida.
Quando voc cria grficos eles sero criados na rea cliente de uma janela, e, em geral
voc estar usando uma posio x/y dentro desta rea para direcionar o VB onde ele
vai colocar o grfico. Os limites da rea cliente so definidos pelas propriedades
ScaleWidth e ScaleHeight. Para definir as coordenadas superior/esquerda iniciais
voc usa as propriedades : ScaleTop e ScaleLeft. Isto pode ser til se voc sabe que
a equao do seu grfico somente se aplica a uma rea a alguma distncia da
coordenada original ( x=0 e y=0)
Ex: picture1.cls
Line - A sintaxe : object.Line [Step] (x1, y1) [Step] - (x2, y2), [color],
[B][F]
Pset o mtodo mais bsico que o VB oferece para desenhar. Usando Pset
voc pode definir a cor de qualquer ponto dentro de uma rea. Por exemplo , o
cdigo abaixo obtm cores e coordenadas aleatrias:
Private Sub Command1_Click()
Dim x as integer
Dim y as integer
Dim iColor as Integer
For i = 1 To 1000
'obtem cores aleatrias entre 0
to 15
iColor = (Int(10 * Rnd) + 0)
'define X de 0 at ScaleWidth
x = (Int((Picture1.ScaleWidth *
Rnd) + 0))
'define Y de 0 at ScaleHeight
y = (Int((Picture1.ScaleHeight *
Rnd) + 0))
'imprime os pontos no PictureBox preenchida com os
picturebox pontos desenhados por Pset.
Picture1.PSet (x, y),
QBColor(iColor)
Next i
End Sub
Pset poderoso , voc pode desenhar qualquer coisa com ele. Voc
s tem que controlar a localizao de cada ponto.
Percebendo a lacuna a Microsoft criou as DLLs conhecidas como DirectX que podem
ser usadas para obter efeitos grficos complexos e com bom desempenho. (Vamos
falar sobre o DirectX em um outro artigo.)
Para terminar o artigo vou mostrar como voc pode criar um projeto no VB para desenha equaes
matemticas. Vai ser um projeto simples para lhe dar a idia de como voc pode trabalhar com os mtodos
aqui descritos. Abaixo temos o formulrio do projeto:
Olhando para o formulrio acima temos:
Option Explicit
Dim i As Integer
Dim x As Single
Dim y As Single
End Sub
End Sub
For i = -9 To 9
' Picture1.Line (i, -0.5)-(i, 0.5)
Next i
End Sub
Fique a vontade para melhorar o cdigo e criar um super programa para desenhar
funes matemticas.
Se voc no sabe por onde comear vou deixar abaixo trs links para voc
pegar programas prontos que fazem exatamente isto. Estude o cdigo com dedicao
e aprenda como fazer.