Como convertir un plano a 3D en 3 pasos

El proyecto Erasmus+ Print3D es una  iniciativa que pretende aplicar la tecnología de impresión 3D en el contexto educativo para la creación de objetos útiles para la sociedad, a modo de aprendizaje-servicio. En concreto, el objetivo de dicho proyecto es involucrar al alumnado en el diseño e impresión de mapas táctiles para invidentes. Interesante, ¿verdad?

Evidentemente, el modelo más inmediato para poner en práctica con los alumnos dicha iniciativa es el modelado 3D de los planos del propio centro educativo. Al fin y al cabo, se trata del único edificio común a todo el alumnado. Sin embargo, diseñar un plano más o menos fidedigno de una planta de un edificio grande con una herramienta como FreeCAD puede ser un proceso laborioso y que puede tomar varias semanas o incluso meses. Más aún si se tiene en cuenta que antes de ponerse a trabajar, es necesario formar al alumnado en el uso de la herramienta.

Y he aquí el problema: por interesante y motivador que sea emprender con los alumnos un proyecto como éste, hace falta programar la actividad haciendo uso de un tiempo lectivo del que no siempre se dispone, pues hay otros contenidos curriculares que también se han de tratar.

Ante esta situación, se hace imprescindible encontrar un método alternativo para el diseño de los planos 3D que simplifique y acorte el proceso en la parte más compleja (el trazado de la distribución de la planta), pero no en la más motivadora (el diseño del plano 3D con los requisitos necesarios para que sea útil para las personas invidentes).

La idea que quiero ilustrar en esta entrada es como partiendo de un trazado en 2D y, utilizando diferentes herramientas para darle volumen, se reducir el proceso de diseño del plano 3D de varias semanas a un par de horas. No está mal, ¿no os parece?

El resultado de este proceso, que he dividido en tres pasos, consigue un trazado en 3D de un plano en 2D que puede ser importado en FreeCAD para dar los retoques finales (poner signos especiales, añadir textos en braille, incluir una leyenda, etc…), antes de enviar a la impresora 3D. Por tanto, sólo me estoy centrando en la fase de diseñar el plano de la distribución, pero no en la fase final de añadir símbolos especiales o indicaciones en braille. Esto último se haría a posteriori con FreeCAD.

A continuación explicaré el proceso propuesto empleando como ejemplo el siguiente plano en formato JPG (de forma general, se puede partir del escaneado del plano de evacuación de emergencias de cualquier edificio):

El punto de partida: un plano en JPG

Lo que se pretende es obtener una versión en 3D de dicho plano, de manera que:

  • Las paredes interiores tengan una altura de 1.5mm
  • Las paredes exteriores (contorno) tengan una altura de 2mm
  • Las paredes exteriores (contorno) sean el doble de gruesas que las interiores
  • Se pueda importar y trabajar sin problemas en FreeCAD

Y las herramientas que necesitamos son las siguientes:

  • Libre Office Draw
  • FreeCAD
  • Acceso a Internet

Veamos, paso a paso, como conseguirlo:

Paso 1: Trazado del plano en 2D

Lo que vamos a hacer es, con un programa de diseño vectorial, «calcar» la imagen del plano del edificio y  generar un vector con las paredes.  Bueno, en realidad haremos dos vectores: uno con el contorno exterior y otro con las divisiones interiores.

Para ello utilizaremos una herramienta de diseño vectorial sencilla: Libre Office Draw. En ella,  importamos la imagen del plano y la ponemos en una capa inferior. En una capa superior iremos calcando con líneas todas las paredes.

Para facilitar el proceso, le he cambiado el color a la línea para que se vea bien sobre el plano.

El proceso se agiliza bastante si no se tienen en cuenta las puertas a la hora de trazar líneas, y al final, se utiliza la operación restar para sustraer la forma de la puerta a la línea.

Para hacer la obertura de la puerta, basta con dibujar un rectángulo y restarlo a la línea de la pared

Hay que intentar que las líneas queden bien encajadas para evitar la aparición de esquinas extrañas posteriormente a la hora de generar el plano 3D. Tenemos que tener en cuenta que se trata de generar un plano táctil, por lo que no hay que introducir accidentalmente información que pueda confundir (de hecho, vale la pena simplificar a poner mucho detalle).

Hay que intentar que no sobresalgan las líneas donde no tengan que sobresalir, que las esquinas no queden escalonadas, etc.

Cuando ya se tiene la distribución de la planta, se seleccionan todas las líneas y se hace la operación de unión, para que todas pasen a ser un único objeto: el vector de la distribución de paredes interior del plano.

El último paso es seleccionar el objeto generado y exportarlo como archivo SVG.

No olvidar marcar la casilla «Selección» para que sólo exporte el objeto seleccionado y no todo el área de diseño.

Después repetiríamos el proceso con una línea más gruesa para la pared exterior del plano. Le daremos el doble de grosor que a las paredes interiores. Generaremos otro SVG independiente.

Hay que procurar que la pared exterior(en naranja) cubra completamente la interior.

Vídeo del proceso:

Paso 2: Conversión 2D a 3D

En este punto tenemos dos vectores en formato SVG con el trazado exterior e interior de las paredes del plano, respectivamente. Ahora los convertiremos a archivos STL. Para ello, utilizaremos una herramienta online que nos hará la función:

Cargamos el primer vector, el de las paredes interiores, y le indicamos que le queremos dar una altura de 1.5mm.

Al subirlo, nos muestra una vista previa del SVG y nos pide el tamaño de la extrusión a realizar

La web hace su magia y nos muestra el resultado. A la derecha, aparece un botón para descargarlo. Lo descargamos.

La web incluso nos deja interactúar con el resultado antes de descargarlo

Repetimos el proceso con el vector de las paredes exteriores pero, en este caso, indicamos 2mm para la altura.

Las paredes exteriores

Llegados a este punto, tenemos dos archivos STL, que ya podríamos importar a FreeCAD para trabajar con ellos. Pero aún falta unir ambos STL en un único objeto 3D. Veamos como hacerlo en el siguiente paso.

Paso 3: Importar a FreeCAD

En este caso, lo que hay que hacer es seguir una secuencia muy concreta de pasos para realizar la importación correctamente:

  1. Abrimos FreeCAD
  2. Seleccionamos el espacio de trabajo de Meshes
  3. Importamos los STL
  4. Posicionamos las dos mallas, una encima de la otra (Data, Placement)
  5. Unimos (Menú Meshes > Boolean > Union)
  6. Cambiamos el espacio de trabajo de Part
  7. Convertimos la malla en forma (Part > Create shape from mesh)
  8. Cambiamos al espacio de trabajo de OpenSCAD
  9. Refinamos la forma (OpenSCAD > Refine Shape Feature)
  10. Cambiamos, de nuevo, al espacio de trabajo de Part
  11. Convertimos forma en sólido (Part > Convert to solid)

Con estos pasos, hemos obtenido un sólido en 3D con el trazado de las estancias y paredes que podemos utilizar para diseñar el mapa final.

El resultado en FreeCAD

Para completar este apartado, le añadiremos una base al plano. Eso lo hacemos desde el área de trabajo de Mesh, añadiendo un objeto sólido (Mesh > Regular Solid). Habrá que redimensionarlo, posicionarlo y seguir los pasos anteriores para convertirlo a un sólido. Unimos la base al plano y ya tendríamos todo preparado para añadir símbolos y leyenda, según las necesidades.

El objeto finalizado

Vídeo del proceso:

Conclusiones

Aunque la forma más profesional de diseñar el plano 3D es usando las primitivas de OpenSCAD a través de FreeCAD, el método propuesto simplifica bastante el proceso, permitiendo, en mi opinión, conseguir una mayor motivación en los alumnos al proporcionarles resultados de forma más inmediata (esto es especialmente deseable en grupos con baja motivación), manteniendo su interés en el proyecto, al tiempo que permite amoldarlo mejor a los contenidos curriculares de las asignaturas de informática y tecnología, así como a algunos módulos de ciclos formativos.

Es cierto, no obstante, que es imprescindible encajar correctamente las líneas en el diseño 2D para evitar problemas posteriores, para lo cual tampoco conviene ir con mucha prisa y concienciar mucho al alumnado. Además, puesto que se utilizan conversores automáticos en algunos pasos, puede que sea necesario utilizar herramientas de terceros para la corrección de las formas antes de poderlas imprimir. Por ejemplo, a veces quedan algunos lados que deberían estar tapados al descubierto, siendo imposible preparar el objeto para la impresión 3D (que sería el último paso del proceso descrito). En mi experiencia, estos problemas han podido ser  resueltos usando las diferentes herramientas de corrección que incorpora la herramienta netfabb Basic.

Por tanto, las ventajas de usar este método son las siguientes:

  • Convierte el proceso en una actividad sencilla y rápida que se puede realizar con alumnos de diversos niveles y edades
  • Se pueden repartir los pasos entre varios grupos de alumnos de niveles y grupos diferentes (un grupo hace el trazado 2D, otro lo importa al FreeCAD, otro se encarga de añadir símbolos y textos en braille…)
  • El diseño vectorial está en currículo de asignaturas y de módulos formativos
  • La escala del mapa es 100% proporcional, al ser un calco del plano 2D
Desventajas:
  • El resultado no es tan exacto como el diseño directo con FreeCAD
  • Puede dar problemas para imprimir si alguna forma no se ha generado correctamente y que sea necesario invertir tiempo en corregirla
  • Al importar directamente el trazado, perdemos un poco el control sobre las mismas (por ejemplo, para mover una pared unos centímetros, será necesario modificar el diseño 2D y repetir todo el proceso)