Tenha uma nova experiência ao navegar no Fórum pelo computador de forma integrada ao portal principal. Acesse o seguinte link: https://www.autolisp.com.br/board/. Entretanto para dispositivos móveis recomendamos acessar este outro link: https://www.autolisp.com.br/forum/

Polyline

Dúvidas sobre VB para AutoCAD...

Moderador: Moderadores

Responder
Avatar do usuário
zeluismc
Papel
Papel
Mensagens: 9
Registrado em: Ter 17 Jun 2008 12:00:00 am

Polyline

Mensagem por zeluismc » Ter 11 Nov 2008 8:13:38 pm

Preciso de extrair as coordenadas de uma polylinha e salva-las em um arquivo de texto.


Será que alguem saberia me responder como faço para obter coordenadas X,Y,Z de cada vértice de uma polylinha?


Se alguem puder me ajudar, desde ja agradeço!

Avatar do usuário
unVolt
Bronze 1/3
Bronze 1/3
Mensagens: 185
Registrado em: Dom 17 Dez 2006 11:00:00 pm
Localização: Jundiaí - SP

Mensagem por unVolt » Ter 11 Nov 2008 9:30:26 pm

Buscando por "polyline" e "coordenadas" aqui no fórum é possível encontrar os seguintes tópicos:

http://www.autolisp.com.br/autolisp/mod ... oordenadas
http://www.autolisp.com.br/autolisp/mod ... oordenadas

O primeiro usa visual lisp, e o segundo autolisp puro.
And I guess I just don't know
André William

Avatar do usuário
zeluismc
Papel
Papel
Mensagens: 9
Registrado em: Ter 17 Jun 2008 12:00:00 am

Mensagem por zeluismc » Qua 12 Nov 2008 3:53:02 pm

Obrigado pelas informações !!!

Eu ja havia procurado no forum, e só encontrei a solução em Autolisp...

Como não conheço Autolisp "apesar de satisfazer o que preciso", gostaria de resolver esse problema com VBA.

Se alguem puder ajudar, desde ja agradeço!!!

Avatar do usuário
unVolt
Bronze 1/3
Bronze 1/3
Mensagens: 185
Registrado em: Dom 17 Dez 2006 11:00:00 pm
Localização: Jundiaí - SP

Mensagem por unVolt » Qua 12 Nov 2008 8:08:50 pm

Opa, desculpe, fui pelo link dos tópicos mais recentes e não vi que esse estava na área de vba.
Mas segue aí um exemplo:

Código: Selecionar todos

Public Sub teste()
    Dim ent As AcadObject
    Dim pt, coords As Variant
    Dim i, n As Integer
    Dim str, valores(3) As String
    
    ThisDrawing.Utility.GetEntity ent, pt
    
    coords = ent.Coordinates
    If ent.ObjectName = "AcDbPolyline" Then
        n = 2
    Else
        n = 3
    End If

    valores(0) = "X: "
    valores(1) = "Y: "
    valores(2) = "Z: "
    For i = LBound(coords) To UBound(coords) Step n
        str = str + Chr(13)
        Dim x As Integer
        For x = 0 To n - 1
            str = str + valores(x) + CStr(coords(i + x)) + " "
        Next x
    Next i
    
    MsgBox str
End Sub
And I guess I just don't know
André William

Avatar do usuário
zeluismc
Papel
Papel
Mensagens: 9
Registrado em: Ter 17 Jun 2008 12:00:00 am

Mensagem por zeluismc » Qui 13 Nov 2008 2:30:59 pm

Obrigado!!!!

Éra isso mesmo q estava precisando....


vlw!

Responder