Você está aqui: AutoCAD VBA ::: Dicas & Truques ::: AcadSelectionSet - Seleção de Objetos

Como percorrer os objetos selecionados na área de desenho do AutoCAD usando AutoCAD VBA e o objeto AcadSelectionSet

Quantidade de visualizações: 51 vezes
Em algumas situações nós queremos percorrer os objetos retornados no objeto AcadSelectionSet de forma individual, ou seja, um de cada vez. Para isso podemos usar um laço For Each...In e acessar o objeto da iteração atual.

Nesta dica eu mostro como pedir para o usuário selecionar um ou mais objetos na área de desenho do AutoCAD e pressionar Enter. Quando isso acontecer, nós vamos receber os objetos selecionados como um objeto AcadSelectionSet. Para finalizar nós vamos percorrer os itens presentes neste objeto e aplicar a cor azul a eles, por meio da propriedade color.

Veja o código AutoCAD VBA completo para o exemplo:

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

' Macro que permite ao usuário selecionar um ou mais
' objetos na área de desenho do AutoCAD e aplicar a cor
' azul a todos eles
 
Sub ColorirObjetosSelecionados()
  ' para guardar a seleção de objetos
  Dim objetosSelecionados As AcadSelectionSet
  ' para guardar o objeto atual
  Dim objetoAtual As AcadEntity
   
  ' estamos trabalhando com o desenho atual
  With ThisDrawing
    On Error Resume Next
    ' primeiro limpamos a seleção atual
    .SelectionSets("CurrentSelection").Delete
    ' agora pedimos para o usuário selecionar os objetos
    MsgBox "Selecione os objetos desejados e pressione Enter"
    ' obtemos a seleção
    Set objetosSelecionados = .SelectionSets.Add("CurrentSelection")
    ' selecionamos os objetos na tela de desenho
    objetosSelecionados.SelectOnScreen
      
    ' agora percorremos todos os objetos selecionados
    For Each objetoAtual In objetosSelecionados
      ' definimos a cor azul para o objeto atual
      objetoAtual.color = acBlue
    Next
  End With
End Sub

Ao executar este código AutoCAD nós teremos o seguinte resultado:

Selecione os objetos desejados e pressione Enter
[Seleciona alguns objetos e pressiona Enter]
[Todos os objetos são coloridos de azul]

Link para compartilhar na Internet ou com seus amigos:

Veja mais Dicas e truques de AutoCAD VBA

Dicas e truques de outras linguagens

Quem Somos

Osmar J. Silva
Programador Freelancer
WhatsApp +55 (062) 98553-6711

Goiânia-GO
Programador Freelancer - Full Stack Developer, Professional Java Developer, PHP, C/C++, Python Programmer, wxWidgets Professional C++ Programmer, Freelance Programmer. Formado em Ciência da Computação pela UNIP (Universidade Paulista Campus Goiânia) e cursando Engenharia Civil pela PUC-Goiás. Possuo conhecimentos avançados de Java, Python, JavaScript, C, C++, PHP, C#, VB.NET, Delphi, Android, Perl, e várias tecnologias que envolvem o desenvolvimento web, desktop, front-end e back-end. Atuo há mais de 20 anos como programador freelancer, atendendo clientes no Brasil, Portugal, Argentina e vários outros paises.
Entre em contato comigo para, juntos, vermos em que posso contribuir para resolver ou agilizar o desenvolvimento de seus códigos.
José de Angelis
Programador Freelancer
WhatsApp +55 (062) 98243-1195

Goiânia-GO
Programador Freelancer - Formado em Sistemas de Informação pela Faculdade Delta, Pós graduado em Engenharia de Software (PUC MINAS), Pós graduado Marketing Digital (IGTI) com ênfase em Growth Hacking. Mais de 15 anos de experiência em programação Web. Marketing Digital focado em desempenho, desenvolvimento de estratégia competitiva, analise de concorrência, SEO, webvitals, e Adwords, Métricas de retorno. Especialista Google Certificado desde 2011 Possui domínio nas linguagens PHP, C#, JavaScript, MySQL e frameworks Laravel, jQuery, flutter. Atualmente aluno de mestrado em Ciência da Computação (UFG)
Não basta ter um site. É necessário ter um site que é localizado e converte usuários em clientes. Se sua página não faz isso, Fale comigo e vamos fazer uma analise e conseguir resultados mais satisfatórios..

Linguagens Mais Populares

1º lugar: Java
2º lugar: Python
3º lugar: C#
4º lugar: PHP
5º lugar: Delphi
6º lugar: C
7º lugar: JavaScript
8º lugar: C++
9º lugar: VB.NET
10º lugar: Ruby



© 2023 Arquivo de Códigos - Todos os direitos reservados
Neste momento há 28 usuários muito felizes estudando em nosso site.