Você está aqui: Visual LISP ::: Dicas & Truques ::: Layer, Layers

Como definir ou retornar a cor de uma layer de um documento do AutoCAD usando as funções vla-put-color e vla-get-color

Quantidade de visualizações: 169 vezes
Nesta dica mostrarei como podemos usas as funções vla-put-color e vla-get-color da linguagem Visual LISP para definir ou obter a cor de uma determinada de um documento do AutoCAD. Vamos começar vendo como obter e retornar a cor de uma layer chamada "PAREDES". Veja:

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

; Esta função mostra como retornar a cor de uma layer
; em um documento do AutoCAD usando a função vla-get-color
(defun c:Obter_Cor_Layer()
  ; o primeiro passo é obter o objeto AutoCAD
  (setq obj_autocad (vlax-get-acad-object))
  ; agora obtemos o documento atual
  (setq doc (vla-get-ActiveDocument obj_autocad))
  ; obtemos a coleção de layers  
  (setq colecao_layers (vla-get-Layers doc))
  
  ; vamos obter a layer com o nome "PAREDES"
  (setq layer (vla-item colecao_layers "PAREDES"))
  ; e mostramos a cor da layer retornada
  (setq cor_layer (vla-get-color layer))
  ;	e exibimos o resultado
  (princ (strcat "\nCor da layer: " (itoa cor_layer)))
  
  (princ)
)

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

Cor da layer: 5

No código de cores do AutoCAD o número 5 representa a cor azul.

Veja agora como podemos definir a cor vermelha (código 1) para a layer chamada "COLUNAS":

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

; Esta função mostra como definir a cor de uma layer
; em um documento do AutoCAD usando a função vla-put-color
(defun c:Definir_Cor_Layer()
  ; o primeiro passo é obter o objeto AutoCAD
  (setq obj_autocad (vlax-get-acad-object))
  ; agora obtemos o documento atual
  (setq doc (vla-get-ActiveDocument obj_autocad))
  ; obtemos a coleção de layers  
  (setq colecao_layers (vla-get-Layers doc))
  
  ; vamos obter a layer com o nome "COLUNAS"
  (setq layer (vla-item colecao_layers "COLUNAS"))
  ; e vamos definir a cor vermelha para esta layer
  (vla-put-color layer 1)
  ; e exibimos o resultado
  (princ "\nCor da layer definida com sucesso.")
  
  (princ)
)

Se a layer existir na coleção de layers, sua cor será alterada para vermelha e teremos a seguinte mensagem:

Cor da layer definida com sucesso.

Link para compartilhar na Internet ou com seus amigos:

Veja mais Dicas e truques de Visual LISP

Dicas e truques de outras linguagens

Códigos Fonte

Programa de Gestão Financeira Controle de Contas a Pagar e a Receber com Cadastro de Clientes e FornecedoresSoftware de Gestão Financeira com código fonte em PHP, MySQL, Bootstrap, jQuery - Inclui cadastro de clientes, fornecedores e ticket de atendimento
Diga adeus às planilhas do Excel e tenha 100% de controle sobre suas contas a pagar e a receber, gestão de receitas e despesas, cadastro de clientes e fornecedores com fotos e histórico de atendimentos. Código fonte completo e funcional, com instruções para instalação e configuração do banco de dados MySQL. Fácil de modificar e adicionar novas funcionalidades. Clique aqui e saiba mais
Controle de Estoque completo com código fonte em PHP, MySQL, Bootstrap, jQuery - 100% funcional e fácil de modificar e implementar novas funcionalidadesControle de Estoque completo com código fonte em PHP, MySQL, Bootstrap, jQuery - 100% funcional e fácil de modificar e implementar novas funcionalidades
Tenha o seu próprio sistema de controle de estoque web. com cadastro de produtos, categorias, fornecedores, entradas e saídas de produtos, com relatórios por data, margem de lucro e muito mais. Código simples e fácil de modificar. Acompanha instruções para instalação e criação do banco de dados MySQL. Clique aqui e saiba mais

Linguagens Mais Populares

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



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