No se trata de un problema de deberes. Está pensado como un reto para las personas que realmente disfrutan de las matemáticas y tienen tiempo de sobra.
Información de fondo
Suponga que tiene un sistema de coordenadas cartesianas en 2D. Hay tres formas: R , C y P .
R es un gran rectángulo. Su lado izquierdo está a lo largo del eje vertical, y su lado inferior está a lo largo del eje horizontal, de manera que su esquina inferior izquierda está en el origen (0, 0).
C es un pequeño círculo que se encuentra en algún lugar dentro de R . El centro de C no es necesariamente en R de un centro geométrico. C no puede cruzarse con ninguna parte de R de la frontera.
P es un polígono irregular de N lados. Es un polígono simple y convexo (no se autointerseca, todos los ángulos son menores de 180 grados). R rodea P y P rodea C . En otras palabras, P se encuentran en la región comprendida entre C de la frontera y R de la frontera. Las esquinas de P no necesariamente tocan los lados de R . Cualquiera de P pueden ser tangentes a C , pero ninguno de P pueden superponerse dentro de C .
Objetivo
Diseñar un algoritmo que genere una variación aleatoria de P de las esquinas. Las esquinas de P se colocan a distancias y ángulos aleatorios en relación con C de la central. La salida del algoritmo es un conjunto ordenado de coordenadas cartesianas, ordenadas por posición en sentido contrario a las agujas del reloj alrededor de C .
Se le dan los siguientes valores constantes:
- la anchura y la altura del rectángulo delimitador R
- el radio y el centro del círculo C
- el número N de esquinas para el polígono P
- la distancia máxima entre el centro de C y cualquiera de P Las esquinas de la ciudad
Si esto se puede resolver, ¿cómo implementarías este algoritmo?
O si esto no es solucionable, ¿puede explicar por qué no? ¿Qué habría que cambiar para que se pueda resolver?
0 votos
¿Puede el polígono rodear el círculo? ¿Y es un polígono simple (es decir, que no se autointerseca)?
0 votos
@Jens Sí, el polígono P es necesario para rodear el círculo. También es un polígono simple.
0 votos
Hay que añadir la condición de que $n \ge 4$ porque si el círculo $C$ casi llena el rectángulo $R$ , $C$ no puede ser encerrado por un triángulo que encaje dentro de $R$ .
0 votos
No, eso se omite intencionadamente. El algoritmo debería ser válido para N \= 3 (donde P es un triángulo).
0 votos
He publicado una figura que ilustra lo que quería decir con el comentario del triángulo.