2 votos

Aplicación de la distorsión a una superficie Bézier

Estoy tratando de simular el efecto de deformación de la imagen, que se utiliza en Adobe Photoshop.

La imagen rectangular se deforma según una superficie cúbica de Bézier (en 2D, todas las componentes Z son 0). Teniendo cualquier superficie de Bézier, distorsión vertical $d \in[0,1]$ se le puede aplicar.

Izquierda superficie bézier de entrada, $d=0$ , Derecha superficie de salida, $d=0.8$

enter image description here enter image description here enter image description here

¿Tienes alguna idea de lo que se hace con la superficie Bézier (16 puntos) al convertir de la versión de la izquierda a la salida de la derecha?

1voto

bubba Puntos 16773

Es evidente que el $y$ -de los puntos de control del parche Bézier no se modifican, y las coordenadas $x$ -los valores se están "estrechando". Cuando digo "estrechar", quiero decir que el borde superior del parche se encoge hacia dentro, el borde inferior se expande hacia fuera y la curva de altura media no se modifica.

Realmente no sé qué significa el " $d=0.8$ " significa. Usted dice $d=0$ corresponde a ningún estrechamiento, y yo diría que $d=1$ es un estrechamiento muy fuerte, en el que el borde superior del parche se encoge hasta un punto (lo que significa que el borde inferior duplicará su anchura).

Supongamos que el parche de la izquierda tiene esquinas en $(-1,-1)$ , $(-1,1)$ , $(1,-1)$ , $(1,1)$ . Si mi conjetura sobre $d$ es correcta, entonces la transformación requerida es: $$ T(x,y) = \big( (1-dy)x, y\big) $$ Es fácil confirmarlo: $$ T(x,0) = (x,0) \quad \text{for all } x $$ $$ T(1,-1) = (1+d, -1) $$ $$ T(1,1) = (1-d, 1) $$ etc.

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