4 votos

Derivada del rectángulo de Bézier

Desde esta página Derivadas de una curva de Bézier Puedo ver que la derivada de un grado $N$ La curva de Bézier es simplemente una curva de Bézier de grado $N-1$ y se explica cómo calcular los puntos de control mediante cada punto de control siendo simplemente $P_{i+1} - P_i$ .

¿Es también cierto que la derivada de un rectángulo de Bézier de grado $(M,N)$ también es un rectángulo de Bézier de grado $(M-1,N-1)$ ? Si es así, ¿cómo se calculan los puntos de control del rectángulo?

Por rectángulo de Bézier, me refiero a una superficie de Bézier de producto tensorial, como la que se describe aquí Wikipediate: Superficie de Bézier .

He tratado de resolverlo en papel pero no he tenido suerte hasta ahora. He podido avanzar en la obtención de una derivada, pero tiene bastantes términos incluso para un parche biquadrático, y me gustaría hacerlo con grados superiores.

Mi objetivo final es que estoy tratando de calcular el gradiente de un rectángulo Bezier univariado que tiene puntos de control escalares. En concreto, el rectángulo toma $X$ y $Z$ valores de 0 a 1 y emite un $Y$ para el valor dado $(X,Z)$ . Quiero encontrar el gradiente para poder usarlo para calcular las normales de la superficie, así como obtener una estimación de la distancia para el trazado de esferas (ray marching).

¡Gracias por cualquier ayuda que podáis aportar!

1voto

bubba Puntos 16773

Sí, es cierto (casi). Si los parámetros de la superficie son $u$ y $v$ la derivada parcial con respecto a $u$ es un parche de Bézier de grado $(M, N-1)$ y la derivada parcial wrt $v$ es un parche de Bézier de grado $(M-1, N)$ .

Si utiliza el algoritmo deCasteljau para calcular los puntos del parche, las derivadas parciales serán subproductos naturales.

A menudo, la mejor manera de manejar un cálculo de superficies es reducirlo a un cálculo de curvas. Así, supongamos que queremos calcular la derivada parcial con respecto a $u$ en los valores de los parámetros $(\bar u, \bar v)$ en el parche Bezier $(u,v) \mapsto \mathbf{S}(u,v)$ . La curva $\mathbf{C}(u) = \mathbf{S}(u,\bar v)$ es una curva de Bézier, cuyos puntos de control son fáciles de obtener. La derivada parcial deseada es simplemente la derivada de la curva de Bezier $\mathbf{C}$ en el valor del parámetro $u = \bar u$ .

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X