El factor de delgadez de una forma geométrica en 2 dimensiones es la relación entre la longitud lateral de su cuadrado contenedor más pequeño y su cuadrado contenedor más grande. Este es un factor importante en la geometría computacional. Así, la esbeltez de un cuadrado es 1, la esbeltez de un círculo es $\sqrt 2$ Pero, ¿cuál es el factor de esbeltez de un triángulo determinado?
Después de intentar sin éxito resolver esto geométricamente, decidí probar una solución puramente analítica. Aquí está:
El triángulo
La gordura, obviamente, no depende de la escala. Por lo tanto, dos parámetros son suficientes para definir el triángulo. Elijo como parámetros un ángulo $\theta$ adyacente al lado más largo y la relación $D$ entre el lado próximo a ese ángulo y el lado más largo. Tenemos que encontrar la gordura en función de $\theta$ y $D$ .
Normalizar el triángulo de manera que su lado más largo se encuentre en el eje x, entre $(0,0)$ y $(1,0)$ . Definir $\theta$ como el ángulo en el origen. Gira el triángulo de forma que $\theta$ está entre $0^\circ$ y $90^\circ$ . En aras de la brevedad, dejemos que $C=\cos \theta$ y $S=\sin \theta$ . $D$ es la longitud del lado que empieza en el origen, de modo que el tercer vértice del triángulo está en $(DC,DS)$ , donde $0<D<1$ , $0\leq C<1$ y $0\leq S<1$ .
El factor de esbeltez debe calcularse en función de los parámetros $D$ , $C$ y $S$ .
El cuadrado de contención
Considere el cuadrado de la unidad $[0,1]\times[0,1]$ . Queremos transformarlo para que contenga el triángulo. Una transformación general de un punto $(x,y)$ es: $(rcx+rsy+h, rsx-rcy+v)$ donde: $r$ es el factor de dilatación, $s$ y $c$ son el seno y el coseno del ángulo de rotación (podemos suponer que ambos están en $[0,1]$ debido a la simetría rotacional del cuadrado), $h$ es la traslación horizontal y $v$ es la traslación vertical. Así que una transformación general del cuadrado unitario tiene los siguientes ángulos:
- $(h,v)$
- $(rc+h,rs+v)$
- $(rs+h,-rc+v)$
- $(rc+rs+h, rs-rc+v)$
y los siguientes lados:
- $s(x-h)=c(y-v)$
- $s(x-h-rs)=c(y-v+rc)$ que es lo mismo que $s(x-h)=c(y-v)+r$
- $c(x-h)=-s(y-v)$
- $c(x-h-rc)=-s(y-v-rs)$ que es lo mismo que $c(x-h)=-s(y-v)+r$
Para contener el triángulo, cada vértice $(x,y)$ del triángulo deben estar en los 4 semiplanos definidos por los 4 lados del cuadrado:
- $c(y-v)\leq s(x-h)\leq c(y-v)+r$
- $-s(y-v)\leq c(x-h)\leq -s(y-v)+r$
Ahora, sustituye cada uno de los 3 vértices del triángulo y obtén, para $(0,0)$ , $(1,0)$ y $(DC,DS)$ respectivamente:
- $-cv\leq -sh\leq -cv+r$
- $sv\leq -ch\leq sv+r$
- $-cv\leq s-sh\leq -cv+r$
- $sv\leq c-ch\leq sv+r$
- $c(DS-v)\leq s(DC-h)\leq c(DS-v)+r$
- $-s(DS-v)\leq c(DC-h)\leq -s(DS-v)+r$
Aquí hay un total de 12 desigualdades. Nuestro objetivo es encontrar la menor $r$ de manera que haya $c,s,h,v$ satisfaciendo todas estas 12 desigualdades.
Eliminando algunas desigualdades y ordenaciones redundantes, obtenemos:
- $r\geq s+cv-sh$
- $cv-sh\geq 0$
- $r\geq c-ch-sv$
- $-ch-sv\geq 0$
- $r\geq s(DC-h)-c(DS-v)=sDC-cDS+cv-sh$
- $r\geq c(DC-h)+s(DS-v)=cDC+sDS-ch-sv$
Para hacer $r$ lo más pequeño posible, debemos seleccionar $h$ y $v$ de tal manera que las desigualdades 2 y 4 se convierten en cero. Entonces nos quedamos con las siguientes desigualdades que $r$ debe satisfacer:
- $r\geq s$
- $r\geq c$
- $r\geq cDC+sDS$
Aquí estoy atascado: ¿cómo puedo resolver este problema de optimización?
La plaza contenida
Consideremos de nuevo el cuadrado unitario $[0,1]\times[0,1]$ . Ahora queremos transformarlo para que esté contenido en el triángulo. Las 4 esquinas del cuadrado deben satisfacer las 3 desigualdades dictadas por los lados del triángulo, que son:
- $y\geq 0$
- $xDS\geq yDC$
- $(1-x)DS\geq (1-DC)y$
Sustituyendo las 4 esquinas del cuadrado se obtienen las siguientes 12 desigualdades que debe satisfacer r, algunas de las cuales son redundantes:
-
$-rc+v\geq 0$
-
$v\geq 0$ (redundante)
-
$rs+v\geq 0$ (redundante)
-
$rs-rc+v\geq 0$ (redundante)
-
$hDS\geq vDC$
-
$(rc+h)DS\geq (rs+v)DC$
-
$(rs+h)DS\geq (-rc+v)DC$ (redundante)
-
$(rc+rs+h)DS\geq (rs-rc+v)DC$ (redundante)
-
$(1-rc-h)DS\geq (1-DC)(rs+v)$
-
$(1-h)DS\geq (1-DC)v$ (redundante)
-
$(1-rc-rs-h)DS\geq (1-DC)(rs-rc+v)$
-
$(1-rs-h)DS\geq (1-DC)(-rc+v)$ (redundante)
Estas implican las siguientes 5 desigualdades (nótese que esta vez el sentido de las desigualdades es inverso porque buscamos maximizar $r$ con sujeción a las desigualdades):
- $cr \leq v$
- $0\leq hDS-vDC$
- $(sDC-cDS)r \leq hDS-vDC$
- $(s-sDC+cDS)r\leq DS-v-hDS+vDC$
- $(s-c-sDC+cDC+sDS+cDS)r\leq DS-v-hDS+vDC$
Aquí, de nuevo, estoy atascado...
El último paso es simplemente dividir los dos $r$ pero, ¿cómo puedo encontrar cada $r$ ?
Nota
Estoy buscando una fórmula que dé la gordura en función de $\theta$ y $D$ . Sin embargo, si crees que hay otro par de parámetros por los que es más conveniente representar la gordura (por ejemplo, los dos ángulos más pequeños), entonces esto también es bienvenido.