Funciones con parámetros en Blockscad. Ejercicio muelle espiral

Pues siguiendo con Blockscad, no precisamente por orden, hoy se me ocurrió cómo explicar variables y funciones con parámetros. Comenzamos con un sencillo ejercicio, cómo hacer un muelle.

Para ello emplearemos las secuencias activando la opción envoltura convexa. Desplazaremos y rotaremos una forma 3D (por ejemplo, un cubo que es el más sencillo de renderizar) en el eje z una cantidad proporcional a la variable del bucle.


Analizando la fórmula empleada, cambiando las magnitudes y observando sus efectos,  podemos extrapolar e introducir diversas variables en nuestro muelle como, por ejemplo, el numero de vueltas, el radio del muelle, el grosor del alambre o algo inversamente proporcional a la distancia entre vueltas. Así, creamos esas variables y podemos cambiar nuestra forma de hacer el muelle a algo más general como:

Así, cambiando los valores a las variables, cambia la forma de nuestro ''muelle'' o espiral. Pero, llegados a este punto, qué tal si definimos una función que realice muelles. Y si a esta función le damos parámetros, aùn mejor. 

La forma en la que podemos definir esos parámetros dentro de una función es clicando en la rueda dentada que tenemos en la parte superior izquierda cuando definimos una función. Pinchamos y arrastramos todos los parámetros o variables que queremos introducir en la definición de la función y los nombramos correctamente.


Una vez hecho esto sólo queda definir la función y, cuando llamemos a la misma, introducir los parámetros que esa propia llamada nos está pidiendo. Así, obtendremos una forma sencilla y elegante de producir nuestros muelles o espirales.

Si preferís, os lo cuento en vídeo (lleva menos tiempo documentarlo así)

En la descripción os enlazo también el proyecto en Blockscad, aunque he de reconocer que tengo el mismo ejercicio en otros e, imagino, con pequeñas variaciones.


El proceso de crear funciones con parámetros es sencillo y escalable a muchas ideas o proyectos que se os puedan ocurrir. Por ejemplo, un reto sencillo sería crea unas palas para un molino con una función en la que puedas controlar el número de palas, la longitud, la inclinación, el radio del eje, ....