¿Qué son las NURBS?

Las NURBS, B-splines racionales no uniformes, son representaciones matemáticas de geometría en 3D capaces de describir cualquier forma con precisión, desde simples líneas, círculos, arcos, o curvas en 2D hasta los más complejos sólidos o superfícies orgánicos de formas libres en 3D. Gracias a su flexibilidad y precisión, se pueden utilizar modelos NURBS en cualquier proceso, desde la ilustración y animación hasta la fabricación.

La geometría NURBS tiene cinco cualidades esenciales que la convierten en la opción ideal para el modelado asistido por ordenador.

  • Para el intercambio de la geometría NURBS se utilizan distinos métodos estándar de la industria. En consecuencia, los usuarios pueden y pueden transportar todos sus modelos geométricos entre los diferentes programas de modelado, renderizado, animación e ingeniería de análisis que hay en el mercado.
  • Las NURBS tienen una definición precisa y muy conocida. La mayoría de las universidades importantes enseñan matemáticas e informática de geometría NURBS. Eso significa que los vendedores de software especializado, los equipos de ingenieros, las empresas de diseño industrial y las empresas de animación que necesitan crear aplicaciones de software específicas para sus proyectos podrán encontrar programadores capacitados para trabajar con la geometría NURBS.
  • Las NURBS pueden representar con precisión objetos geométricos estándar tales como líneas, círculos, elipses, esferas y toroides, así como formas geométricas libres como carrocerías de coches y cuerpos humanos.
  • La cantidad de información que requiere la representación de una forma geométrica en NURBS es muy inferior a la que necesitan por separado las aproximaciones comunes.
  • La regla de cálculo de las NURBS, que se describe a continuación, se puede implementar en un ordenador de manera eficaz y precisa.

¿Qué es la geometría NURBS?

Las curvas y superficies NURBS se comportan de maneras similares y comparten mucha terminología. Proporcionaremos información más detallada sobre las curvas, porque son más fáciles de describir. Una curva NURBS se define mediante cuatro elementos: grados, puntos de control, nodos y regla de cálculo.

Grado

El grado es un número entero positivo.

Este número es 1, 2, 3 o 5, pero puede ser cualquier número entero positivo. Las líneas y polilíneas NURBS son normalmente de grado 1, los círculos de son grado 2 y la mayoría de las formas libres son grado 3 o 5. A veces se utilizan los siguientes términos: lineal, cuadrático, cúbico y quíntico. Lineal significa de grado 1, cuadrático significa de grado 2, cúbico significa de grado 3 y quíntico significa grado 5.

Es posible que vea referencias del orden de una curva NURBS. El orden de una curva NURBS es un número entero positivo igual a (grado+1). En consecuencia, el grado es igual a (orden-1).

Existe la posibilidad de incrementar los grados de una curva NURBS sin cambiar su forma. Pero no es posible reducir el grado de una curva NURBS y no cambiar su forma.

Puntos de control

Los puntos de control son una lista de puntos de grado+1 como mínimo.

Una de las maneras más sencillas de cambiar la forma de una curva NURBS es mover los puntos de control.

Los puntos de control tienen un número asociado denominado peso. Con algunas excepciones, los pesos son números positivos. Cuando todos los puntos de control de una curva tienen el mismo peso (normalmente 1), la curva se denomina no racional. De lo contrario, la curva se denomina racional. En NURBS, la R significa racional e indica que una curva NURBS tiene la posibilidad de ser racional. A la práctica, la mayoría de las curvas NURBS son no racionales. Algunas curvas, círculos y elipses NURBS, ejemplos significativos, son siempre racionales.

Nodos

Los nodos son una lista de números de grado+N-1, donde N es el número de puntos de control. A veces esta lista de números se denomina vector nodal. En este contexto, la palabra vector no significa una dirección 3D.

Esta lista de números de nodos debe cumplir varias condiciones técnicas. El modo estándar para asegurar que las condiciones técnicas se cumplan es requerir que el número se mantenga igual o aumente a medida que vaya bajando en la lista y limitar el número de valores duplicados a que no sea superior al grado. Por ejemplo, para una curva NURBS de grado 3 con 11 puntos de control, la lista de números 0,0,0,1,2,2,2,3,7,7,9,9,9 es una lista de nodos satisfactoria. La lista 0,0,0,1,2,2,2,2,7,7,9,9,9 no es aceptable porque hay cuatro 2, y cuatro es un número mayor que el grado.

El número de veces que se duplica el valor de un nodo se denomina multiplicidad nodal. En el ejemplo anterior de lista satisfactoria de nodos, el valor del nodo 0 tiene una multiplicidad de tres, el valor del nodo 1 tiene una multiplicidad de uno, el valor del nodo 2 tiene una multiplicidad de tres, el valor del nodo 3 tiene multiplicidad de uno, el valor del nodo 7 tiene mutiplicidad de dos y el valor del nodo 9 tiene multiplicidad de tres. Un valor nodal es un nodo de multiplicidad total si el grado se ha duplicado varias veces. En el ejemplo, los valores de nodo 0, 2, y 9 tienen multiplicidad total. Al valor de un nodo que aparece una sola vez se le denomina nodo simple. En el ejemplo, los valores del nodo 1 y 3 son nodos simples.

Si una lista de nodos se inicia con un nodo de multiplicidad completa, la siguen nodos simples, termina con un nodo de multiplicidad completa y los valores se espacian uniformemente, entonces los nodos son uniformes. Por ejemplo, si una curva NURBS de grado 3 con 7 puntos de control tiene nodos 0,0,0,1,2,3,4,4,4, la curva tendrá nodos uniformes. Los nodos 0,0,0,1,2,5,6,6,6 no son uniformes. Los nodos que no son uniformes se denominan no uniformes. Las letras N y U de la palabra NURBS significan “no uniforme” e indican que se permite que los nodos de una curva NURBS sean no uniformes.

Los valores duplicados del nodo en la mitad de la lista del nodo hacen que una curva de NURBS sea menos suave. En caso extremo, un nodo de completa multiplicidad en la mitad de la lista de nodos significa que hay un lugar en la curva NURBS que se puede doblar en un punto de torsión. Por esta razón, a algunos diseñadores les gusta agregar y quitar nodos y luego ajustar los puntos de control para hacer curvas más suaves o figuras torsionadas. Debido a que el número de nodos es igual a (N+grado-1), donde N es el número de puntos de control, si se agregan nodos también se agregan puntos de control, y si se quitan nodos se quitan puntos de control. Los nodos se pueden añadir sin cambiar la forma de la curva de NURBS. En general, quitar nodos cambiará la forma de una curva.

Nodos y puntos de control

Un error frecuente se produce cuando cada nodo se empareja con un punto de control, pero esto ocurre solo en las NURBS de grado 1 (polilíneas). Para curvas NURBS de grados más altos, existen grupos de nodos de 2 x grado que corresponden a grupos de puntos de control de grado. Por ejemplo, tenemos una curva NURBS de grado 3 con 7 puntos de control y nodos 0,0,0,1,2,5,8,8,8. Los primeros cuatro puntos de control están agrupados con los primeros seis nodos. Del segundo hasta el quinto punto de control están agrupados con los nodos 0,0,1,2,5,8. Del tercer al sexto punto de control están agrupados con los nodos 0,1,2,5,8,8. Los últimos cuatro puntos de control están agrupados con los últimos seis nodos.

Algunos modeladores que utilizan algoritmos más antiguos para el cálculo de curvas NURBS necesitan dos valores de nodos extra para un total de (grado+N+1) nodos. Cuando Rhino exporta e importa geometría NURBS, agrega y quita automáticamente estos dos nodos sobrantes, ya que la situación lo requiere.

Regla de cálculo

Una regla de cálculo de curva es una fórmula matemática que coge un número y asigna un punto.

La regla de cálculo NURBS es una fórmula que comprende el grado, los puntos de control y los nodos. En la fórmula hay lo que se llama funciones básicas de B-spline. La B y la S de NURBS significan basis spline. El número de cálculo con que empieza la regla de cálculo se denomina parámetro. Puede imaginarse la regla de cálculo como una caja negra que se come un parámetro y produce un punto. El grado, los nodos y los puntos de control determinan el funcionamiento de la caja negra.

Si sabe leer fórmulas matemáticas, aquí encontrará más información con detalles técnicos (en inglés) ikipedia: Non uniform rational b spline.