Curva de Bézier

La versión actual de la página aún no ha sido revisada por colaboradores experimentados y puede diferir significativamente de la versión revisada el 6 de mayo de 2019; las comprobaciones requieren 26 ediciones .

Las curvas de Bezier  son tipos de curvas propuestas en los años 60 del siglo XX de forma independiente por Pierre Bezier de la empresa de automóviles Renault y Paul de Casteljo de la empresa Citroen , donde se utilizaron para diseñar carrocerías.

Aunque el descubrimiento de de Casteljou se realizó algo antes que el de Bézier (1959), su investigación no fue publicada y mantenida en secreto por la empresa hasta finales de la década de 1960.

La curva de Bézier es un caso especial de los polinomios de Bernstein , descritos por el matemático ruso Sergei Natanovich Bernstein en 1912.

Las curvas fueron presentadas por primera vez al público en general en 1962 por el ingeniero francés Pierre Bézier , quien, habiéndolas desarrollado independientemente de Casteljot, las usó para el diseño asistido por computadora de carrocerías de automóviles . Las curvas recibieron el nombre de Béziers, y el método recursivo que desarrolló para definir curvas ( algoritmo de de Casteljo) recibió el nombre de de Casteljo .

Posteriormente, este descubrimiento se convirtió en una de las herramientas más importantes de los sistemas de diseño asistido por computadora y los programas de gráficos por computadora .

Definición

Deje que la secuencia de puntos de control , dónde y para , se dé en el espacio de dimensión sobre .

Entonces el conjunto de puntos con coordenadas , dado paramétricamente por expresiones

para donde un para ,

llamada curva de Bezier .

Un polinomio de grado con respecto a un parámetro se denomina función base (correspondiente al punto de control ) de una curva de Bézier, o polinomio de Bernstein .

Aquí  está el número de combinaciones de a .

Notas

  1. La curva de Bezier correspondiente a ambos y es el punto .
  2. La curva de Bezier correspondiente al par , es decir, en , es un segmento parametrizado (linealmente) que conecta el punto (en ) con el punto (en ).
  3. En cualquier orden , la curva de Bezier contiene un punto (esta es la imagen del parámetro ) y un punto (esta es la imagen del parámetro ).
  4. Una curva de Bézier (en el caso general, es decir, si no ha degenerado en un punto ) es orientable, ya que es la imagen de un segmento orientado . Las secuencias de puntos de control corresponden a las curvas de Bezier, que coinciden como conjuntos de puntos, pero tienen (generalmente) orientaciones opuestas.
  5. Las curvas de Bezier correspondientes a las secuencias de puntos de control y no coinciden en .
  6. Si cambias , solo entonces .

Tipos de curvas de Bezier

Curvas lineales

Cuando n = 1, la curva es un segmento de línea recta, los puntos de referencia P 0 y P 1 determinan su comienzo y final. La curva está dada por la ecuación:

.

Curvas cuadráticas

Una curva de Bezier cuadrática (n = 2) está definida por tres puntos de anclaje: P 0 , P 1 y P 2 .

.

Las curvas Bézier cuadráticas en splines se utilizan para describir la forma de los caracteres en fuentes TrueType y archivos SWF .

Curvas cúbicas

En forma paramétrica, una curva Bezier cúbica (n = 3) se describe mediante la siguiente ecuación:

.

Cuatro puntos de referencia P 0 , P 1 , P 2 y P 3 dados en un espacio bidimensional o tridimensional determinan la forma de la curva.

La línea parte del punto P 0 , en dirección a P 1 y termina en el punto P 3 , acercándose a él por el lado P 2 . Es decir, la curva no pasa por los puntos P 1 y P 2 , se utilizan para indicar su dirección. La longitud del segmento entre P 0 y P 1 determina qué tan pronto la curva se convertirá en P 3 .

En forma matricial, una curva de Bézier cúbica se escribe de la siguiente manera:

,

donde se llama la matriz básica de Bezier:

Los sistemas y formatos de gráficos modernos como PostScript (así como Adobe Illustrator y los formatos de formato de documento portátil (PDF) basados ​​en él ), Gráficos vectoriales escalables (SVG) [1] , Metafont , CorelDraw y GIMP utilizan splines de Bezier para representar curvas formas. , compuesto por curvas cúbicas.

Construcción de curvas Bezier

Curvas lineales

El parámetro t en la función que describe el caso lineal de la curva de Bezier determina exactamente dónde se ubica B ( t ) en la distancia de P 0 a P 1 . Por ejemplo, en t = 0,25, el valor de la función B ( t ) corresponde a un cuarto de la distancia entre los puntos P 0 y P 1 . El parámetro t cambia de 0 a 1, y B ( t ) describe un segmento de línea entre los puntos P 0 y P 1 .

Curvas cuadráticas

Para construir curvas de Bézier cuadráticas, se requiere seleccionar dos puntos intermedios Q 0 y Q 1 a partir de la condición de que el parámetro t varíe de 0 a 1:

Curvas de grados superiores

Para construir curvas de órdenes superiores, en consecuencia, se requieren más puntos intermedios. Para una curva cúbica, estos son los puntos intermedios Q 0 , Q 1 y Q 2 que describen curvas lineales, así como los puntos R 0 y R 1 que describen curvas cuadráticas: una ecuación más simple .

Para curvas de cuarto grado, serán los puntos Q 0 , Q 1 , Q 2 y Q 3 que describen curvas lineales, R 0 , R 1 y R 2 que describen curvas cuadráticas, así como los puntos S 0 y S 1 que describen curvas cúbicas . Curvas de Bézier:

Propiedades de la curva de Bezier

Aplicaciones en infografía

Debido a la facilidad de configuración y manipulación, las curvas de Bezier han encontrado una amplia aplicación en gráficos por computadora para modelar líneas suaves. La curva se encuentra completamente dentro del casco convexo de sus puntos de referencia. Esta propiedad de las curvas de Bezier, por un lado, simplifica enormemente la tarea de encontrar los puntos de intersección de las curvas (si los cascos convexos de los puntos de anclaje no se cruzan, entonces las curvas mismas no se cruzan), y por otro lado , permite el control intuitivo de los parámetros de la curva en la interfaz gráfica utilizando sus puntos de anclaje . . Además, también se pueden realizar transformaciones de curvas afines ( traslación , escalado , rotación , etc.) aplicando las transformaciones adecuadas a los puntos de anclaje.

Las más importantes son las curvas de Bézier de segundo y tercer grado (cuadráticas y cúbicas). Las curvas de mayor grado durante el procesamiento requieren más cálculos y se usan con menos frecuencia con fines prácticos. Para construir líneas con formas complejas, las curvas Bezier individuales se pueden conectar secuencialmente entre sí en una spline Bezier . Para garantizar una línea suave en la unión de dos curvas, tres puntos de anclaje adyacentes de ambas curvas deben estar en la misma línea recta. En los programas de gráficos vectoriales , como Adobe Illustrator o Inkscape , dichos fragmentos se conocen como "paths" ( ruta ), y en 3DS Max y programas de modelado 3D similares , las curvas de Bezier se denominan "splines".

Conversión de curvas de Bézier cuadráticas a cúbicas

Una curva Bézier cuadrática con coordenadas se convierte en una curva Bézier cúbica con coordenadas .

Frecuencia de muestreo de las curvas de Bezier [2]

La tasa de muestreo se define de la siguiente manera:

, es decir, cada punto siguiente debe diferir del anterior en 1 (digamos un píxel). Además, si lo preguntas así:

A través de él, puedes calcular .

Resolvamos esta ecuación para curvas Bezier de primer orden (lineales):

Escribamos la diferencia de puntos para un eje:

Saquemos los factores comunes fuera de paréntesis:

Encontremos :

de esta forma, puede calcular la tasa de muestreo para atravesar un eje particular de una curva Bezier de cierto orden. Es decir, debe obtener 16 ecuaciones de este tipo para las curvas de Bezier del orden 1 al 16, siempre se establece por puntos, será suficiente sustituir sus coordenadas en la ecuación resultante para omitir la curva con el mínimo nivel de discretización inequívoco .

Véase también

Notas

  1. Consorcio World Wide Web ( W3C ). Gráficos vectoriales escalables (SVG) 1.1 (segunda edición). Capítulo 8: Caminos  (inglés) (16 de agosto de 2011). — Recomendación del W3C. Fecha de acceso: 21 de mayo de 2012. Archivado desde el original el 24 de junio de 2012.
  2. Algoritmos: curvas de Bezier . designermanuals.blogspot.com . Consultado el 9 de enero de 2021. Archivado desde el original el 12 de enero de 2021.

Literatura

Enlaces