Oficina de CAD

 

Em 03 de janeiro de 2012, o PoliGNU inaugurou o ano realizando uma oficina sobre CAD, sistemas de desenho para engenharia. Esta atividade foi realizada para retomar o projeto do “CAD Livre”, cujo objetivo é promover o desenvolvimento de um CAD livre, em especial para engenharia civil. Até o momento, o maior fruto do projeto foi a biblioteca “LibreDWG”, que permite a interoperabilidade com arquivos salvos no formato secreto usado pelo AutoCAD, e agora é parte do projeto GNU.

 

Com a ajuda da Haydeé Svab, estudante de engenharia civil pertencente ao PoliGNU, abordamos alguma funcionalidades do AutoCAD, que é o software proprietário CAD dominante no mercado de engenharia civil. Algumas dessas funcionalidades importantes são:

  • Recursos para desenhar com precisão como SNAPS (para atrair pontos notáveis como fim de linha, meio da linha, ponto de tangência, etc.) e ORTHO, que permite desenhar apenas na horizontal e vertical;

  • Comandos de vizualização como PAN e ZOOM (e todas suas opções);

  • Criação de objetos simples com LINE, MULTILINE, POLYLINE, SPLINE, CIRCLE e BOUDARY;

  • Modificação de objetos com ERASE, COPY, OFFSET, ARRAY, MOVE, TRIM, FILLET e EXPLODE;

  • Ideia de LAYER, como criar, editar e gerenciar;

  • Organização visual da tela e vistas com abertura de VIEWPORTs, MSPACE (trabalhando no model) e PSPACE (trabalhando nos lay outs);

  • Utilização de bibliotecas de símbolos com o comandos BLOCK, (criação, edição e explosão).

 

[[{"type":"media","view_mode":"media_large","fid":"17","attributes":{"alt":"","class":"media-image","typeof":"foaf:Image"}}]]

Snaps do AutoCAD

 

[[{"type":"media","view_mode":"media_large","fid":"18","attributes":{"alt":"","class":"media-image","typeof":"foaf:Image"}}]]

Tela de purge: lá você pode conferir os símbolos invisíveis

 

Ainda há muito outros comandos também fundamentais a serem explorados como ROTATE, SCALE, EXTEND, MIRROR, STRCHT, BREAK, CHAMFER, HATCH, TEXT, DRAW ORDER, EDIT, DIST, AREA, LIST, DIMENSION, CHPROP, DDLTYPE, PRINT, PLOT, entre outros – que fica para a próxima oficina!

A ideia de examinarmos o AutoCAD é elaborarmos uma lista de requisitos mínimos necessários para um CAD usado na engenharia civil. Esses requisitos ainda devem ser organizados de acordo com nível de prioridade e de complexidade de desenvolvimento.

O Juca (Felipe Sanches), membro do Garoa Hacker Clube e do PoliGNU, também apresentou o Openscad, um software de CAD voltado para o desenho de peças mecânicas em que a peça é especificada por um algoritmo.

Para coroar o dia da retomada do projeto CAD livre, foi feito um dojo de Openscad, em que o desafio era desenhar/modelar uma peça que tínhamos em mãos – mais especificamente uma peça da RepRep, uma impressora 3D capaz de imprimir suas próprias peças de plástico. O dojo foi um sucesso e será em breve replicado no Garoa Hacker Clube.

Abaixo segue um trecho do código feito para gerar a peça, assim como a foto da peça original e a captura de tela da imagem gerada pelo Openscad.

<font face="'Courier New', monospace" size="2">difference (){<br /><br />union () {<br />&nbsp; difference() {<br />&nbsp;&nbsp; cylinder (r=r_corpo+tamanho_dente/2, h=h_corpo);<br />&nbsp;&nbsp; translate ([0,0,h_corpo*0.8])<br />&nbsp;&nbsp; cylinder (r=r_corpo-largura_borda, h=h_corpo*0.2+0.1);<br />&nbsp;&nbsp;<br />&nbsp; }<br />&nbsp; cylinder (r=r_2, h=h_2);<br />}</font>

<font face="'Courier New', monospace" size="2">translate([0,0,-1])<br />cylinder (r=r_3, h=h_3);<br />for (i=[0:6]){<br />&nbsp; rotate ([0, 0, i*360/7])<br />&nbsp; translate ([t_gota,0,-1]){<br />&nbsp;&nbsp; cylinder (r=r_gota, h=h_gota);<br />&nbsp;&nbsp; //translate([0,0,0])<br />&nbsp;&nbsp; rotate([0,0,2*r_gota])<br />&nbsp;&nbsp; cube ([r_gota, r_gota, h_gota]);<br />&nbsp;&nbsp;<br />&nbsp; }<br />}</font>

<font face="'Courier New', monospace" size="2">for(i=[0:3]){<br />&nbsp; rotate([0,0,i*360/3])<br />&nbsp; translate([-xc/2,-yc/2,h_2-zc+0.1])<br />&nbsp; cube([xc,yc,zc]);<br />}</font>

<font face="'Courier New', monospace" size="2">&nbsp;&nbsp; // dentes<br />for (i=[0:num_dentes]){<br />&nbsp; rotate ([0,0,i*360/num_dentes])<br />&nbsp; translate([-r_corpo-0.1,0,-0.1]) {<br />&nbsp;&nbsp; cylinder ($fn=3,r=tamanho_dente, h=h_3);&nbsp;&nbsp;&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp; }<br />&nbsp;&nbsp;&nbsp; }<br />}</font>
 

[[{"type":"media","view_mode":"media_large","fid":"20","attributes":{"alt":"","class":"media-image","typeof":"foaf:Image"}}]]

Peça original

[[{"type":"media","view_mode":"media_large","fid":"19","attributes":{"alt":"","class":"media-image","typeof":"foaf:Image"}}]]

Captura de tela da peça gerada no Openscad

 

Como próximos passos do projeto CAD livre precisamos:

  • montar a lista de requisitos do CAD, separando requisitos por prioridade e complexidade;

  • retomar a lista de comparação dos CADs livres existentes.

 

Qualquer um(a) é bem vindo(a) a ajudar e contribuir conosco – quem se habilita?

 

 

Portuguese, Brazil
Atividade: 

No comments available.

Add new comment