Pesquisar este blog

quarta-feira, 17 de outubro de 2012

Layers: ligando e desligando via código

Boa noite


     Irei falar sobre um assunto relativamente simples, mas que dá muito trabalho aos programadores iniciantes em Auto-Lisp: a manipulação da janela de layers (camadas). Especialmente, neste artigo, irei falar sobre as operações: "Criar um layer"; "Setar um layer"; "Ligar um (ou mais) layer"; e "Desligar um (ou mais) layer" usando a linguagem auto lisp. Ainda irei dar uma dica sobre o operador "*" junto a valores strings.
     Para início, é importante ter-se alguns entendimentos básicos de autocad sobre o assunto:
        > O layer padrão de todo arquivo é o "0". Para a construção de blocos, é útil que todo o traçado do elemento seja feito neste layer, pois ele sendo um bloco em outro arquivo, o mesmo automaticamente assumirá os valores do layer em que foi inserido;
        >  na definição de layers, pode-se setar propriedades como cor de visualização, tipo de traçado da linha, espessura padrão da linha, cor de plotagem, se ele é plotavel, se ele pode ser apenas um viewpoint, e ainda descrever para que o mesmo serve (description).
     Ao digitar o comando layer no prompt nas versões atuais do auto cad, é provável que se apresentará uma janela amigável para se configurar e editar os layers. Com tudo, a manipulação de layes via auto-lisp tem de ser estruturada como era nas versões mais antigas - ou seja - via linha de comando. Vamos então as operações propostas:


  • criar um layer:
(command "layer" "m" "O_NOME_DO_LAYER" "c" "blue" "" "")

 - sendo "m" de "Make"; "c" de "Color", e "" "" como confirmação de comando (duplo enter)

  • setar um layer:
(command "layer" "s" "O_NOME_DO_LAYER" "" ""

- sendo "s" de "SET"; "c" de "Color", e "" "" como confirmação de comando (duplo enter)

  • ligar um layer (ou uma lista de layers):
(command "layer" "ON" "O_NOME_DO_LAYER" "" ""

  • desligar um layer (ou uma lista de layers):
(command "layer" "OFF" "O_NOME_DO_LAYER" "" ""

prezados, até mais...












    Um comentário:

    1. Muito Bom. Você pode dar um exemplo de como colocar uma lista de layers, por favor?

      ResponderExcluir