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/

Inserindo bloco com atributo

Dúvidas sobre AutoLISP...

Moderador: Moderadores

Avatar do usuário
leo1805
Concreto
Concreto
Mensagens: 71
Registrado em: Qua 20 Fev 2008 12:00:00 am

Inserindo bloco com atributo

Mensagem por leo1805 » Seg 24 Mar 2008 12:44:39 pm

Boa tarde,

Estou fazendo uma rotina onde eu insiro um bloco com atributo, mas não estou conseguindo inserir o bloco e editar o atributo.
Gostaria que alguém me desse uma luz.

Agradeço antecipadamente !
Obrigado

Avatar do usuário
cleyson
Prata 1/3
Prata 1/3
Mensagens: 430
Registrado em: Seg 19 Jun 2006 12:00:00 am

Resposta

Mensagem por cleyson » Seg 24 Mar 2008 1:30:01 pm

Veja o Modelo abaixo:


[lsp](command "_.insert" "Residencia_Proj_Said" p1 "1" "1" 0 "Atributo")[/lsp]

Residencia_Proj_Said = NomeDoBloco
p1 = Ponto de Inserção
"1" "1" = Para Escala Fator x,y = 1
0 = Rotação (Graus)
Atributo= Valor do Atributo

Se tiver mais de um Atributo basta Acrescentar após o "Atributo" "Atributo1" ...

Atenciosamente
Cleyson Cloves do Carmo
Cuiabá - Mato Grosso
“Na morte que me sigam, pois não deixo ninguém a chorar”. Cleyson
“Na vida as horas passam e tudo se renova, não invoque a morte, amanhã é um novo dia”. Cleyson
“Deus fez os caminhos, o homem faz o destino” Cleyson

Avatar do usuário
leo1805
Concreto
Concreto
Mensagens: 71
Registrado em: Qua 20 Fev 2008 12:00:00 am

Mensagem por leo1805 » Seg 24 Mar 2008 2:30:53 pm

Por exemplo:

Minha linha de comando é está.

[lsp](command "_.insert" "CHAMADA DETALHE" P3 escala escala 0 "Atributo" "Atributo1")[/lsp]

Eu só não entendi a parte do valor do atributo já que meu bloco tem 2.

Obrigado desde já.

Avatar do usuário
cleyson
Prata 1/3
Prata 1/3
Mensagens: 430
Registrado em: Seg 19 Jun 2006 12:00:00 am

Respondendo ...

Mensagem por cleyson » Seg 24 Mar 2008 2:40:26 pm

[lsp](command "_.insert" "CHAMADA DETALHE" P3 escala escala 0 "Atributo" "Atributo1")[/lsp]

Você está considerando que seu Bloco tem dois atributos ... desse jeito está certo, sendo que no Bloco aparecerá os Valores "Atributo" e "Atributo1" nos Valores das Tag's ...

Obs: A variável escala dever ser uma string Ex:
[lsp](setq escala "1")[/lsp]

Faça o teste diretamente na linha do Prompt ...
[lsp](command "_.insert" "CHAMADA DETALHE" P3 "1" "1" 0 "Atributo" "Atributo1")[/lsp]
(O bloco deve estar na Pasta de Support ...)

Atenciosamente
Cleyson Cloves do Carmo[lsp][/lsp]
Cuiabá - Mato Grosso
“Na morte que me sigam, pois não deixo ninguém a chorar”. Cleyson
“Na vida as horas passam e tudo se renova, não invoque a morte, amanhã é um novo dia”. Cleyson
“Deus fez os caminhos, o homem faz o destino” Cleyson

Avatar do usuário
leo1805
Concreto
Concreto
Mensagens: 71
Registrado em: Qua 20 Fev 2008 12:00:00 am

Mensagem por leo1805 » Seg 24 Mar 2008 2:50:23 pm

Desculpe mas como sou novo em programação~ainda não consegui entender.

Eu teria que digitar "Atributo1" na tag do meu atributo e depois por o mesmo "Atributo1" no meu programa ?

Avatar do usuário
leo1805
Concreto
Concreto
Mensagens: 71
Registrado em: Qua 20 Fev 2008 12:00:00 am

Mensagem por leo1805 » Seg 24 Mar 2008 2:53:38 pm

Se for isso não deu certo.

Aparece a mensagem de Unknow command "Atributo" e Unknow command "Atributo1"


Obrigado pela atenção !

Avatar do usuário
cleyson
Prata 1/3
Prata 1/3
Mensagens: 430
Registrado em: Seg 19 Jun 2006 12:00:00 am

Mensagem por cleyson » Seg 24 Mar 2008 3:41:28 pm

Está acusando que o Bloco não tem Atributos ou a rotina está capturando um bloco com o mesmo nome e este está sem Atributo...

Os "Atributos" e "Atributo1" são somente valores ... poderiam ser no caso de um Bloco de Casa a Cor da Casa e Qtde de Pessoas da Casa: "Azul" "9" ...

Qualquer coisa posta a rotina pra gente dar uma olhada ...

Atenciosamente
Cleyson Cloves do Carmp
Cuiabá - Mato Grosso
“Na morte que me sigam, pois não deixo ninguém a chorar”. Cleyson
“Na vida as horas passam e tudo se renova, não invoque a morte, amanhã é um novo dia”. Cleyson
“Deus fez os caminhos, o homem faz o destino” Cleyson

Avatar do usuário
leo1805
Concreto
Concreto
Mensagens: 71
Registrado em: Qua 20 Fev 2008 12:00:00 am

Mensagem por leo1805 » Seg 24 Mar 2008 4:05:21 pm

Da uma olhada !!!


[lsp](defun c:det ()

(getvar "cmdecho")
(setq ort (getvar "orthomode")
txt (getvar "textstyle")
escala (getvar "dimscale"))
(setvar "cmdecho" 0)
(setvar "orthomode" 0)
(if (setq p1 (getpoint "\n-> Escolha o Primeiro Ponto"))
(if (setq p2 (getpoint p1 "\n-> Escolha o Segundo Ponto"))
(if (setq p3 (getpoint p2 "\n-> Escolha o Terceiro Ponto"))
(progn
(if (= (car p2) (car p3))
(setq rot 90)
(if (= (cadr p2) (cadr p3))
(setq rot 0)
(alert "Sua Chamada está Torta ! ! !")
)
)
(setvar "textstyle" "romans")
(command "pline" p1 p2 p3 ^C^C)
(command "_.insert" "CHAMADA DETALHE" P3 escala escala 0 "Atributo" "Atributo1")
)
(princ "\n-> Você não Entrou com o terceiro ponto")
)
(princ "\n-> Você não Entrou com o segundo ponto")
)
(princ "\n-> Você não Entrou com o primeiro ponto")
)
(setvar "orthomode" ort)
(setvar "textstyle" txt)
(princ)
)[/lsp]

Avatar do usuário
leo1805
Concreto
Concreto
Mensagens: 71
Registrado em: Qua 20 Fev 2008 12:00:00 am

Mensagem por leo1805 » Seg 24 Mar 2008 4:33:38 pm

Estava fazendo alguns teste, e descobri o motivo pelo qual a rotina não funcionava !
Quando os atributos foram criadas o preset estava setado !!!

Cleyson muito Obrigado pela ajuda.

Alexandre Moroni
Papel
Papel
Mensagens: 10
Registrado em: Dom 05 Mai 2013 8:32:11 pm

Re: Inserindo bloco com atributo

Mensagem por Alexandre Moroni » Sáb 23 Mai 2020 12:04:43 pm

Bom dia

Aproveitando a dúvida do Leo, tenho uma rotina aonde é inserido um bloco que tem um atributo, esse atributo é uma variável que informo antes de inserir o bloco, gostaria que quando inserisse o bloco a rotina já usasse essa variável com o atributo, mas não estou conseguindo resolver esse problema, alguém poderia me dar uma dica de como resolver isso.
Segue abaixo parte da minha rotina que está com problemas.

(setq AlPLTC_tx (strcat "h=" (rtos AlPLTC 2 1) "m")); variável que recebe o valor da altura da placa

(command "_-insert" "C:\\Arquivos_Autolisp\\Biblioteca\\Placa Trânsito_Ø40-teste" PtInBlPlT "1" "1" 0)

PtInBlPlT é o ponto de inserção do bloco

Responder