![]() |
|
|
Planilha de Dimensionamento de Tubulações
Hidráulicas Água Fria e Água Quente CompletaNossa planilha automática de dimensionamento de tubulações de água fria e quente é uma ferramenta desenvolvida para auxiliar engenheiros e projetistas no cálculo rápido e preciso das redes hidráulicas de edificaçoes. Por meio da inserçao de dados como vazao, diâmetro da tubulaçao, comprimento da rede, material do tubo e coeficientes hidráulicos, a planilha realiza automaticamente os cálculos necessários para verificar velocidade da água, perda de carga e dimensionamento adequado das tubulaçoes. |
||
Você está aqui: Visual LISP ::: Dicas & Truques ::: Layer, Layers |
Como testar se uma layer existe em um documento do AutoCAD usando Visual LISP e uma função personalizadaQuantidade de visualizações: 422 vezes |
|
Nesta dica mostrarei como podemos escrever uma função Visual LISP personalizada para testar se uma determinada layer existe em um documento do AutoCAD. Como acontece nas outras dicas, o primeiro passo é usar as funções vlax-get-acad-object e vla-get-ActiveDocument para obter o objeto AutoCAD e o documento ativo. O passo seguinte é obter a coleção de layers usando a função vla-get-Layers. Note que nossa função personalizada recebe a coleção de layers do documento e o nome da layer a ser pesquisada e retorna verdadeiro ou falso dependendo da existência dela. Nossa função Pesquisar_Layer faz uso das funções vl-catch-all-error-p e vl-catch-all-apply para verificar se há algum erro de automação na chamada à função vla-item, que acessa um item na coleção de layers. Se houver erro, então sabemos que a layer pesquisada não existe. Veja o código Visual LISP completo para o exemplo:
; Esta função mostra como testar se uma
; layer existe em um documento do AutoCAD
(defun c:Layer_Existe()
; 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))
; agora vamos testar se a layer chamada "ESCADA"
; existe no documento
(if (Pesquisar_Layer colecao_layers "ESCADA")
(princ "A layer existe")
(princ "A layer não existe")
)
(princ)
)
; função personalizada que recebe o nome de uma
; layer e retorna verdadeiro ou falso se ela existir
; ou não
(defun Pesquisar_Layer(colecao_layers nome_layer)
(not
(vl-catch-all-error-p
(vl-catch-all-apply 'vla-item (list colecao_layers nome_layer))
)
)
)
Ao executar este código Visual LISP nós teremos uma de duas mensagens possíveis: A layer existe A layer não existe |
|
|
Veja mais Dicas e truques de Visual LISP |
Dicas e truques de outras linguagens |
|
PHP - PHP para iniciantes - Como obter a diferença em horas entre duas datas (e suas respectivas horas) |
E-Books em PDF |
||||
|
||||
|
||||
Linguagens Mais Populares |
||||
|
1º lugar: Java |





