[HELP] COMO UTILIZAR O OBJETO LINE ?

PATRICIALINDA 01/08/2009 13:19:31
#318540
Preciso muito da ajuda de vocês....

Segue anexo uma imagem jpg que fiz de um software que aparenta ser simples:
http://www.gtsdigital.com.br/arquivos_download/LINE.jpg

Objetos utilizados:
  • Picture-box
  • Label
  • Line
  • Form

    Ações que preciso fazer:
    Na imagem tem 2 traçados verdes que fiz para demostrar 2 funções que preciso fazer para medir o traçado feito em uma foto e mostrar em milimetros (mm) e centimetros quadados (cm2), queria fazer o mesmo em Visual Basic.
  • 1º No primeiro traçado, o usuario clicou na picture para marcar o ponto inicial da marcação, logo ao correr com o mouse (sem precisar ficar com o botão precionado) a line foi sendo criada dando a impressão de marcação na foto até ele dar um duplo-clique para marcar o fim do traçado e assim foi passado em uma label o raio, ( a medida em cm2), mas seria legal passar em várias unidades de medida (cm, twips, Pixel e Inches)

  • 2º No segundo traçado, o usuario simplesmente deu um clique em um ponto inicial e o objeto line ficou parecendo um elastico com uma ponta grudada na picture e a outra grudada no mouse, até o usuario dar um clique para grudar a outra ponta e assim foi passado para uma label o valor da reta em mm.

  • [txt-color=#ff0000] Me ajudem, por favor, pois nao estou conseguindo.... ? [/txt-color]
    TECLA 01/08/2009 15:18:42
    #318545
    Resposta escolhida
    Com a rotina abaixo você já consegue desenhar em um PICTURE.

    Option Explicit
    Dim oldx As Double, oldy As Double


    Private Sub Picture1_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)
    oldx = X
    oldy = Y
    End Sub


    Private Sub Picture1_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
    Picture1.DrawMode = 13
    Picture1.DrawWidth = 1

    If Button > 0 Then
    Picture1.Line (oldx, oldy)-(X, Y), vbBlack
    End If

    If Button > 1 Then
    Picture1.Line (oldx, oldy)-(X, Y), vbWhite
    End If

    oldx = X
    oldy = Y
    End Sub
    PATRICIALINDA 02/08/2009 10:18:25
    #318583
    TECLA,

    Muito bom seu exemplo, mas nao estou conseguindo pegar a media em milimetros e centimetros como postei na foto no link acima, vc teria uma noção ?

    Olha o source (fonte) que tenho pronto até agora:
    http://www.gtsdigital.com.br/arquivos_download/Source_Medidas.zip
    TECLA 02/08/2009 12:27:30
    #318587
    O objeto PICTURE tem uma propriedade chamada SCALEMODE onde você pode configurar a medida por MILÍMETRO e CENTÍMETRO.
    De qualquer forma, vou dar uma olhada no seu exemplo.
    PATRICIALINDA 02/08/2009 12:34:52
    #318589
    Querido TECLA, abri outro chamado deixando mais claro meu objetivo:

    http://www.vbmania.com.br/pages/index.php?varModulo=Forum&varMethod=Abrir&varID=318588&varUltimaPagina=1
    Tópico encerrado , respostas não são mais permitidas