Para poder facer isto precisamos definir módulos (funcións) os cales se lle pasan os parámetros. Estes parámetros diferencian as características dos obxectos.
A definición dun módulo se realiza mediante a palabra clave module. Para exemplarizar isto imos crear unha estrela de oito puntas. En primeiro lugar creamos o módulo marco, que crea un cadrado hueco.
//Marco cadrado
module marco( ){
difference (){
cube([40, 40, 10], center= true);
cube([25, 25, 14], center= true);
}
A limitación que ten o código anterior é que o marco que crea o módulo sempre ten a mesma dimensión 40 por 40 mm. Podemos definir parámetros para esa función, de maneira que dependendo do valor que lle pasemos na chamada a esa función, podamos variar as características do noso marco. No exemplo imos definir dous parámetros un se vai chamar dimensión é se refire o tamaño externo do cubo e outro altura que define a altura do marco.
//Marco cadrado con parámetros
module marco(dimension, altura ){
difference (){
cube([dimension, dimension, altura], center= true);
cube([25, 25, 14], center= true);
}
}
Para utilizar este módulo temos que chamalo, como unha función máis do Openscad, especificando entre os parentesis os parámetros.
marco (40, 10);
Se poden chamar os módulos dende outros módulos permitindo a creación de figuras máis complexas a partir de figuras máis simples.
module estrela (dimension, altura){
marco (dimension, altura);
rotate ([0,0,45])
marco (dimension, altura);
}
Se isto se garda nun arquivo chamado estrela.scad se pode utilizar en calquera outro deseño importando o arquivo, e chamando o módulo dentro do código.
include <estrela.scad>
Para utilizar a función só se ten que facer a chamada, da mesma maneira que si estivera codificado no mesmo ficheiro.
No hay comentarios:
Publicar un comentario