Registro: Mar 29, 2011 Mensagens: 10 Localização: São Paulo
Status: Offline
Enviada: Qua 30 Mai 2012 2:38:46 pm Assunto: Blocos que não acho o Nome e nem Referência
Olá pessoal, estou tendo um problema aqui em alguns projetos. Preciso contar as Luminárias de um projeto, mas o projeto todo no Model veio bloqueado preciso contar as luminárias, ai quando explodo o desenho não acho os blocos das lumináiras para contagem. Quando clico duas vezes em cima da Luminária até abre a caixa de Block, mas não aparece o Nome e nem o Desenho do Bloco na Janela. Alguém sabe me dizer alguma solução pra esse caso? Grato.
Registro: Feb 27, 2003 Mensagens: 2648 Localização: Brasil
Status: Offline
Enviada: Qui 31 Mai 2012 12:12:24 pm Assunto:
Provavelmente foi usado algum lisp, como o lockup, para travar a edição.
Quando vc seleciona o desenho e abre o Properties, deve aparecer como bloco ou como objeto Minsert, nos dê mais detalhes e se possível upe o arquivo no www.gigasize.com e nos passe o link para podermos analisar e ver se podemos ajudar.
____________ Abraços,
Luciana Klein
Sócia-Fundadora CADKlein
Diretora AUGIbr
Autora Livro AutoCAD 2006 2D
Autora Livro AutoCAD 2008 2D/3D
Autora Livro AutoCAD 2010 2D/3D
AutoCAD 2009/10/11/2012 Certified Professional/Associate
www.lucianaklein.com/loja
Registro: Feb 27, 2003 Mensagens: 2648 Localização: Brasil
Status: Offline
Enviada: Qui 31 Mai 2012 5:35:25 pm Assunto:
Usei o AutoCAD 2012, explodi o desenho e nada sumiu.
Isolei as Layers que tinham "Luminaria" nos nomes, são 3 layers e usei o comando SELECT para contar, o resultado foi de 2115 blocos.
O problema é que os blocos que começam com *U não são editáveis, nem são contados através do comando BCOUNT.
Mas dá pra saber quantos são usando o SELECT.
____________ Abraços,
Luciana Klein
Sócia-Fundadora CADKlein
Diretora AUGIbr
Autora Livro AutoCAD 2006 2D
Autora Livro AutoCAD 2008 2D/3D
Autora Livro AutoCAD 2010 2D/3D
AutoCAD 2009/10/11/2012 Certified Professional/Associate
www.lucianaklein.com/loja
Registro: Mar 29, 2011 Mensagens: 10 Localização: São Paulo
Status: Offline
Enviada: Qui 31 Mai 2012 5:45:46 pm Assunto:
Sim Lú, mas eu queria saber pq eles não aparecem como Blocos qdo da dois cliques ou abre o Blockeditor...Existe alguma outra forma pra visualizar e contar esses blocos? Grato.
Registro: Feb 27, 2003 Mensagens: 2648 Localização: Brasil
Status: Offline
Enviada: Qui 31 Mai 2012 5:59:09 pm Assunto:
Incialmente, pelas vias normais, não tem como, pois eles foram transformados em blocos anônimos, ou seja: não são editáveis.
Mas... pesquisando no google, encontrei esse site:
http://www.draftsperson.net/index.php?title=Anonymous_Blocks_in_AutoCAD
Que fala desse assunto e tem até um lisp pra transformar blocos anônimos em blocos "normais", o "problema" é que ele vai nomear cada bloco separadamente. Exemplo:
*U236 - TEMP236
*U237 - TEMP237 e assim sucessivamente....
Ou seja: você tem 2115 blocos que são anônimos, mas estão nomeados diferentemente, o lisp transforma em blocos normais, mas com nomes diferentes também.
Note que esse lisp tem 2 comandos: UNANON - permite selecionar apenas um bloco e UNANONALL - que transforma todos os blocos anônimos em blocos normais.
Não sei dizer se o UNANONALL funciona perfeitamente, pq meu AutoCAD ainda está processando o comando, são 2115 blocos.... e parece que travou no 241.
(PDot);++++++++++++ Get Entity Name ++++++++++++++++++++++++++++++++++++
(defun GetOne (/ st os)
(setq os (getvar "SNAPMODE") s nil)
(setvar "SNAPMODE" 0)
(while (not st)
(setq st (ssget)))
(while (> (sslength st) 1)
(setq st nil)
(princ "\nOnly 1 At A Time Please\n")
(while (not st)
(setq st (ssget))))
(setvar "SNAPMODE" os)
(setq s (ssname st 0)))
(PDot);++++++++++++ Convert An Anonymous Block To Named Block ++++++++++
(defun UnAnon (b / tdef en ed bc bn bd in) ;Supply ename
(setq bn "TEMP1" bc 1)
(while (tblsearch "BLOCK" bn)
(setq bc (1+ bc) bn (strcat "TEMP" (itoa bc))))
(and (= (type b) 'ENAME)
(setq bd (entget b)
in (cdr (assoc 2 bd))))
(if (or (not bd)
(not in)
(/= "INSERT" (cdr (assoc 0 bd)))
(/= "*U" (substr in 1 2))
(= (logand (cdr (assoc 70 (tblsearch "BLOCK" in))) 4) 4)
(= (logand (cdr (assoc 70 (tblsearch "BLOCK" in))) 16) 16)
(= (logand (cdr (assoc 70 (tblsearch "BLOCK" in))) 32) 32))
(progn
(princ "*** Not An Anonomymous Block *** ")
(setq bn nil bc nil bd nil in nil b nil)
(exit)))
(setq tdef (tblsearch "BLOCK" in)
en (cdr (assoc -2 tdef))
ed (entget en))
(entmake (list (cons 0 "BLOCK")
(cons 2 bn)
(cons 70 0)
(cons 10 (cdr (assoc 10 tdef)))))
(entmake ed)
(while (setq en (entnext en))
(setq ed (entget en))
(entmake ed))
(entmake (list (cons 0 "ENDBLK")))
(setq bd (subst (cons 2 bn) (assoc 2 bd) bd))
(entmod bd)
(entupd b)
(princ (strcat "\n" bn)))
(PDot);************ Main Program ***************************************
(defun uan_ (/ m_v m_n olderr uan_var s)
(uan_smd)
(GetOne)
(UnAnon s)
(uan_rmd))
(defun c:UnAnonall (/ ss i)
(setq ss (ssget "X" (list (cons 0 "INSERT")(cons 67 (if (= (getvar "TILEMODE") 1) 0 1)))))
(and ss
(setq i (sslength ss))
(while (not (minusp (setq i (1- i))))
(setq en (ssname ss i))
(if (= "*U" (substr (cdr (assoc 2 (entget en))) 1 2))
(UnAnon en))))
(prin1))
(PDot);************ Load Program ***************************************
(defun C:UnAnon () (uan_))
(if uan_ (princ "\nUnAnon Loaded\n"))
(prin1)
;================== End Program ========================================
Se o meu AutoCAD finalizar eu posto aqui se deu tudo certo.
____________ Abraços,
Luciana Klein
Sócia-Fundadora CADKlein
Diretora AUGIbr
Autora Livro AutoCAD 2006 2D
Autora Livro AutoCAD 2008 2D/3D
Autora Livro AutoCAD 2010 2D/3D
AutoCAD 2009/10/11/2012 Certified Professional/Associate
www.lucianaklein.com/loja