Principios de voxelización para diseñar en Grasshopper

¿Qué es un vóxel?

Deberíamos pensar en ello como un píxel tridimensional; de hecho la palabra vóxel surge como una abreviatura de pixel volumétrico. Al igual que un píxel que describe los atributos de un elemento dentro de una composición más grande; un vóxel puede describir atributos sobre una ubicación física dentro de un volumen 3D. Estos atributos pueden incluir información sobre sus propiedades de material, densidad, color y muchos más.

«El voxel es la unidad cúbica que compone un objeto tridimensional. Esto quiere decir que, a diferencia de un pixel, también posee la coordenada z, que le aporta el dato de profundidad.»

Los vóxeles son interesantes porque ofrecen un nuevo paradigma donde los objetos se pueden definir como una representación densa de las propiedades de los materiales en un volumen 3D. Además, las representaciones basadas en voxel encajan perfectamente dentro de una nueva clase de impresoras 3D que tienen múltiples cabezales de impresión capaces de depositar diferentes tipos de resina (es decir, plástico o caucho, transparente u opaco, a todo color) dentro de un único volumen de construcción. Todo esto significa que ahora tiene un mayor control sobre cómo se verán, sentirán y funcionarán sus diseños. Con este nuevo concepto pueden verse nuevos diseños como la Pixel Tower en Tailandia.

En el pasado, la digitalización de sólidos se realizaba mediante algoritmos de enumeración espacial que empleaban métodos de clasificación de puntos o células de forma exhaustiva o por subdivisión recursiva. Sin embargo, las técnicas de subdivisión para la descomposición del modelo en subespacios rectangulares son computacionalmente caras y, por lo tanto, inapropiadas para grillas de resolución media o alta. En cambio, los objetos deben ser voxelizados directamente, preferiblemente generando un conjunto N-separador, N-mínimo y de cobertura, donde N depende de la aplicación. Los algoritmos de voxelización deberían seguir el mismo paradigma que los algoritmos de conversión de escaneo 2D; deben ser incrementales, precisos, usar aritmética simple (preferiblemente solo enteros), y tener una complejidad que no sea más que lineal con la cantidad de vóxeles generados. La literatura de la conversión de escaneo 3D es relativamente pequeña.

Danielsson («Incremental Curve Generation», 1970) y Mokrzycki («Algorithms of Discretization of Algebraic Spatial Curves on Homogeneous Cubical Grids», 1988) desarrollaron algoritmos de curva 3D similares donde la curva se define por la intersección de dos superficies implícitas. Los algoritmos de voxelización se han desarrollado para líneas tridimensionales, círculos tridimensionales y una variedad de superficies y sólidos, incluidos polígonos, poliedros y objetos cuádricos.

Se han desarrollado algoritmos eficientes para la voxonización de polígonos utilizando un mecanismo de decisión basado en enteros incrustado en un algoritmo de llenado de líneas de barrido, para curvas paramétricas, superficies y volúmenes utilizando una técnica de diferenciación directa basada en enteros, y para objetos cuádricos tales como cilindros, esferas y conos usando algoritmos de «tejido» .

Si quieres profundizar y conocer mas sobre este tema puedes descargar y ver ejemplos creados por Michael Pryor.

Curso de Grasshopper. Diseño paramétrico – generativo

Share your thoughts