Continuando o que havia dito a respeito da densidade de pontos elevada gerada ao abrir o arquivo DXF do PLS-CADD, decidi apresentar uma solução paliativa necessária.
Evidentemente, hoje, não temos o tempo necessário para elucubrar soluções brilhantes para o problema. Trabalhando em 5 projetos ao mesmo tempo temos apenas que partir para uma solução rápida que reduza o tamanho do arquivo como um todo sem um esforço braçal de escovação de bits.
Pensando dessa forma, e foi assim que consegui atingir meu objetivo de reduzir o tamanho do arquivo, procurei formas que poderiam estar duplicando informação.
Ponto 1 - Não formar um bloco
Muito embora eu seja um grande defensor dos blocos de AutoCAD existe uma questão "praticidade vs. peso". Nesse caso específico temos que entender que o bloco é um sub desenho de AutoCAD dentro de um desenho de AutoCAD então se vamos repetir o desenho mais de uma vez dentro do seu desenho de CAD isso se torna uma vantagem pois podemos alterar o bloco e todas os BlockReference's serão alterados.
No caso de pegar toda essa massa de dados e construir um bloco único isso faz com que o desenho fique pesado pelo simples fato de buscar um "desenho dentro de outro desenho" além de não usar a vantagem específica do bloco.
Se pensarmos no bloco de mata do arquivo apresentado anteriormente no outro post, temos com o bloco o arquivo pesando 15,78MB. O simples fato de remover o bloco, ou seja, explodir a representação e purgar o bloco do desenho conseguimos uma redução do arquivo para 14MB (11% de redução).
Ponto 2 - Linhas são formas básicas 2D Ploylines não
Outro ponto a se levar em conta é que as formas básicas do AutoCAD são basicamente linhas, círculos e arcos (figuras 2D) qualquer outro objeto pode ser reduzido a esses três formatos primários que são bem otimizados,
Neste caso em particular o PLS-CADD gera para cada ponto duas linhas como "2D Plolynline" em formato de cruz, se esse esquema de Cruz fosse otimizado opara ele todo ser um objeto com "2D Plolynline" talvez fosse mais otimizado mas desse jeito não pois a estrutura "2D Plolynline" é otimizada quanto temos mais de 2 pontos reduzindo a redundância de informações.
Conclusão, explodindo todo os pontos - vem a mensagem "Long Time Alert" - conseguimos reduzir o tamanho do arquivo para modestos 5,7MB (64% de redução).
Veja que só com essas duas iniciativas conseguimos reduzir consideravelmente o tamanho do arquivo sem nenhum esforço de realizar um programa que realiza um tipo qualquer de processamento, isso é apenas saber entender o AutoCAD e encontrar a melhor forma de realizar nele o que se propõe.
Evidentemente, hoje, não temos o tempo necessário para elucubrar soluções brilhantes para o problema. Trabalhando em 5 projetos ao mesmo tempo temos apenas que partir para uma solução rápida que reduza o tamanho do arquivo como um todo sem um esforço braçal de escovação de bits.
Pensando dessa forma, e foi assim que consegui atingir meu objetivo de reduzir o tamanho do arquivo, procurei formas que poderiam estar duplicando informação.
Ponto 1 - Não formar um bloco
Muito embora eu seja um grande defensor dos blocos de AutoCAD existe uma questão "praticidade vs. peso". Nesse caso específico temos que entender que o bloco é um sub desenho de AutoCAD dentro de um desenho de AutoCAD então se vamos repetir o desenho mais de uma vez dentro do seu desenho de CAD isso se torna uma vantagem pois podemos alterar o bloco e todas os BlockReference's serão alterados.
No caso de pegar toda essa massa de dados e construir um bloco único isso faz com que o desenho fique pesado pelo simples fato de buscar um "desenho dentro de outro desenho" além de não usar a vantagem específica do bloco.
Se pensarmos no bloco de mata do arquivo apresentado anteriormente no outro post, temos com o bloco o arquivo pesando 15,78MB. O simples fato de remover o bloco, ou seja, explodir a representação e purgar o bloco do desenho conseguimos uma redução do arquivo para 14MB (11% de redução).
Ponto 2 - Linhas são formas básicas 2D Ploylines não
Outro ponto a se levar em conta é que as formas básicas do AutoCAD são basicamente linhas, círculos e arcos (figuras 2D) qualquer outro objeto pode ser reduzido a esses três formatos primários que são bem otimizados,
Neste caso em particular o PLS-CADD gera para cada ponto duas linhas como "2D Plolynline" em formato de cruz, se esse esquema de Cruz fosse otimizado opara ele todo ser um objeto com "2D Plolynline" talvez fosse mais otimizado mas desse jeito não pois a estrutura "2D Plolynline" é otimizada quanto temos mais de 2 pontos reduzindo a redundância de informações.
Conclusão, explodindo todo os pontos - vem a mensagem "Long Time Alert" - conseguimos reduzir o tamanho do arquivo para modestos 5,7MB (64% de redução).
Veja que só com essas duas iniciativas conseguimos reduzir consideravelmente o tamanho do arquivo sem nenhum esforço de realizar um programa que realiza um tipo qualquer de processamento, isso é apenas saber entender o AutoCAD e encontrar a melhor forma de realizar nele o que se propõe.
Comentários
Postar um comentário