Impressão 3D - Modelação
Esta é uma pequena introdução à modelação 3D, vamos utilizar um programa freeware, o Openscad. Pode ser descarregado aqui Esta é uma introdução básica a algumas das funções do openscad que nos permitem começar a modelar em 3D.
Comandos do rato
1 Rodar o sistema de eixos:
Carregar e manter pressionada a tecla esquerda do rato e movimentar o rato em qualquer direção.
2 Mover o plano Carregar e manter pressionada a tecla esquerda do rato e movimentar o rato em qualquer direção.
3 Zoom Rodar a roda do rato de forma a fazer zoom in ou zoom out.
2 Mover o plano Carregar e manter pressionada a tecla esquerda do rato e movimentar o rato em qualquer direção.
3 Zoom Rodar a roda do rato de forma a fazer zoom in ou zoom out.
Objectos
Cubo
Vamos desenhar um cubo com 30mm de lado, " cube(30); " - Deste modo vou utilizar a função cube e definir que o meu cubo tem de aresta o valor 30.
Paralelepípedo Vamos desenhar um paralelepipedo com lados 20,40 e 10mm, " cube([20,40,10]); " - Deste modo vou utilizar a função cube e definir que o meu cubo tem valores específicos para cada um dos eixos (x,y e z = 20,40 e 10 respetivamente).
Esfera Vamos desenhar uma esfera com raio de 20mm, " sphere(r=20); " - Deste modo vou utilizar a função sphere e definir o raio r=20mm.
Prisma Vamos desenhar um prisma, neste caso triângular " sphere(20, $fn=3); " - Deste modo vou utilizar a função sphere juntamente com o comando $fn=3, assim estou a inscrever um triângulo num círculo.
Cilíndro Vamos desenhar um cilíndro com raio 20mm e altura 30mm, " cylinder (h=30, r1=20, r2=20); " - Deste modo vou utilizar a função cylinder e definir a altura h, e os dois raios r1 e r2.
Cone Vamos desenhar um cone com raio de base 20mm e raio de topo 1mm e altura 30mm, " cylinder (h=30, r1=20, r2=1); " - Deste modo vou utilizar a função cylinder e definir a altura h, e os dois raios r1 e r2.
Nota Como podem ver nas imagens os nossos objectos curvos não apresentam uma superfície totalmente curva, para obtermos esse efeito devemos utilizar o seguinte comando " $fn=360 " assim por exemplo no cone " cylinder (h=30, r1=20, r2=1, $fn=360); " - Deste modo temos uma superfície totalmente curva.
Paralelepípedo Vamos desenhar um paralelepipedo com lados 20,40 e 10mm, " cube([20,40,10]); " - Deste modo vou utilizar a função cube e definir que o meu cubo tem valores específicos para cada um dos eixos (x,y e z = 20,40 e 10 respetivamente).
Esfera Vamos desenhar uma esfera com raio de 20mm, " sphere(r=20); " - Deste modo vou utilizar a função sphere e definir o raio r=20mm.
Prisma Vamos desenhar um prisma, neste caso triângular " sphere(20, $fn=3); " - Deste modo vou utilizar a função sphere juntamente com o comando $fn=3, assim estou a inscrever um triângulo num círculo.
Cilíndro Vamos desenhar um cilíndro com raio 20mm e altura 30mm, " cylinder (h=30, r1=20, r2=20); " - Deste modo vou utilizar a função cylinder e definir a altura h, e os dois raios r1 e r2.
Cone Vamos desenhar um cone com raio de base 20mm e raio de topo 1mm e altura 30mm, " cylinder (h=30, r1=20, r2=1); " - Deste modo vou utilizar a função cylinder e definir a altura h, e os dois raios r1 e r2.
Nota Como podem ver nas imagens os nossos objectos curvos não apresentam uma superfície totalmente curva, para obtermos esse efeito devemos utilizar o seguinte comando " $fn=360 " assim por exemplo no cone " cylinder (h=30, r1=20, r2=1, $fn=360); " - Deste modo temos uma superfície totalmente curva.
Rotações e translações
Translação
Podemos deslocar o nosso objecto através dos eixos x, y e/ou z, " translate([40,0,0])sphere(20); " - Desta forma desloquei o meu objeto ao longo do eixo x, 40mm.
Rotação Utilizando a função “rotate” posso definir quantos graus é a rotação e em que eixo se dá essa rotação, neste exemplo apliquei uma rotação de 45 graus no eixo dos x e z ao meu objeto, " rotate([45,0,45])cylinder(h=30, r1=10, r2=10); "
Rotação Utilizando a função “rotate” posso definir quantos graus é a rotação e em que eixo se dá essa rotação, neste exemplo apliquei uma rotação de 45 graus no eixo dos x e z ao meu objeto, " rotate([45,0,45])cylinder(h=30, r1=10, r2=10); "
União e diferença
União
Utilizando a função union defino quais os objetos que quero unir" union() {
cylinder(h=30,r1=20,r2=20);
sphere(20);
} " - Desta forma uni os 2 objectos.
Diferença Utilizando a função difference defino quais os objetos que quero subtrair" difference() { cylinder(h=30,r1=20,r2=10); sphere(20); } " - Desta forma subtraí os 2 objectos. Mas atenção, aqui a ordem dos objectos é importante, pois se subtraírmos na ordem inversa o objecto final é muito diferente " difference() { sphere(20); cylinder(h=30,r1=20,r2=10); } " Passa o rato na imagem para ver.
Diferença Utilizando a função difference defino quais os objetos que quero subtrair" difference() { cylinder(h=30,r1=20,r2=10); sphere(20); } " - Desta forma subtraí os 2 objectos. Mas atenção, aqui a ordem dos objectos é importante, pois se subtraírmos na ordem inversa o objecto final é muito diferente " difference() { sphere(20); cylinder(h=30,r1=20,r2=10); } " Passa o rato na imagem para ver.