É, as imagens do blog sumiram... mas não adianta ficar choramingando... pede pra sair!!!! pede pra sair sr 01!!!!
Hoje vou mudar um pouco e postar um código pra substituir blocos de diversos desenhos.
O caso é o seguinte: nosso contratante sismou que queria um bloco do carimbo diferente com layers diferentes, etc.
Temos trocentos arquivos DWG, com trocentos layouts cada. Imagina o trabalhão de substituir cada bloco de cada desenho....
Sim, você deve (deveria!!!) ter usado XREF, mas por algum motivo, não o fez. Terá de fazer não mão!!!
Serviço, não?
Bom, existem muitas formas de fazer isso, e como sou programador (ou não!!!), claro que escrevi algumas linhas pra me resolver isso
O programa resultou nisto:
No primeiro campo informamos o nome do bloco antigo.
No segundo campo, informamos um dwg que contem um bloco com o mesmo nome, porem editado.
Fiz assim, porque este bloco possui atributos dinâmicos.
Depois, no terceiro campo você escolhe a pasta onde estão os trocentos arquivos a modificar.
O último campo tem o nome do atributo dinâmico de "Visibility State". Se não tiver isso, deixe em branco.
Bem simples, né?
Aí é só mandar rodar e esperar.....
Um fiz aqui com 125 arquivos de 1.2MB cada e levou uns 5 minutos!!! Isso porque usei o RAMDISK e porque a técnica que usei para abrir o desenho, não precisa fazer nenhum "Regen", que é o que realmente demora no autocad.
Bom, o programa em sí é funcional, e nele voce poderá ver como abrir um dwg, editar e salvar
Compilei para o cad 2012, a DLL está na pasta ./bin/debug
use NETLOAD para carregar e TROCABLOCOS para usar
o código fonte está disponível. Usei o VS 2010
Se você gostar, posta um comentário aí!!!
O código fonte e o executável estão aqui
Hoje vou mudar um pouco e postar um código pra substituir blocos de diversos desenhos.
O caso é o seguinte: nosso contratante sismou que queria um bloco do carimbo diferente com layers diferentes, etc.
Temos trocentos arquivos DWG, com trocentos layouts cada. Imagina o trabalhão de substituir cada bloco de cada desenho....
Sim, você deve (deveria!!!) ter usado XREF, mas por algum motivo, não o fez. Terá de fazer não mão!!!
Serviço, não?
Bom, existem muitas formas de fazer isso, e como sou programador (ou não!!!), claro que escrevi algumas linhas pra me resolver isso
O programa resultou nisto:
No primeiro campo informamos o nome do bloco antigo.
No segundo campo, informamos um dwg que contem um bloco com o mesmo nome, porem editado.
Fiz assim, porque este bloco possui atributos dinâmicos.
Depois, no terceiro campo você escolhe a pasta onde estão os trocentos arquivos a modificar.
O último campo tem o nome do atributo dinâmico de "Visibility State". Se não tiver isso, deixe em branco.
Bem simples, né?
Aí é só mandar rodar e esperar.....
Um fiz aqui com 125 arquivos de 1.2MB cada e levou uns 5 minutos!!! Isso porque usei o RAMDISK e porque a técnica que usei para abrir o desenho, não precisa fazer nenhum "Regen", que é o que realmente demora no autocad.
Bom, o programa em sí é funcional, e nele voce poderá ver como abrir um dwg, editar e salvar
Compilei para o cad 2012, a DLL está na pasta ./bin/debug
use NETLOAD para carregar e TROCABLOCOS para usar
o código fonte está disponível. Usei o VS 2010
Se você gostar, posta um comentário aí!!!
O código fonte e o executável estão aqui