5 votos

Lugar 12 puntos equidistantes en un $\pi$ / 3 curva

Para un juego de ordenador (lo que significa que el origen está en la parte superior izquierda) necesito 12 puntos en forma equidistante en un círculo.

La curva debe ir también a través de los 3 puntos rojos se muestra a continuación:

enter image description here

Aquí es cómo estoy tratando de resolverlo:

Los puntos en que la curva debe tener las coordenadas:

x = R * cos(alpha + beta) + p
y = R * sin(alpha + beta) + q

El R, beta, p y q son desconocidas para mí, pero alpha va de 0 a $\pi$/3 en 12 pasos y sé w, h y b.

Y sé que la curva debe contener los 3 puntos rojos:

(0, h - 2b) when alpha is 0
(w/2, h - 3b) when alpha is pi/6
(w, h - 2b) when alpha is pi/3

Así que esto me da 6 ecuaciones a resolver:

0 = R cos(beta) + p
h - 2b = R sin(beta) + q

w/2 = R cos(pi/6 + beta) + p
h - 3b = R sin(pi/6 + beta) + q

w = R cos(pi/3 + beta) + p
h - 2b = R sin(pi/3 + beta) + q

Las ecuaciones anteriores deben proporcionar a me R, beta, p y q - a la derecha?

Y entonces yo podría poner mi 12 puntos (en realidad son puntos medios de un juego de cartas) mediante la ejecución de este bucle:

for (i = 0; i < 12; i++) {
    card.x = R * Math.cos(i * Math.PI / 36) + p;
    card.y = R * Math.sin(i * Math.PI / 36) + q;
}

Por desgracia, no sé cómo resolver el 6 ecuaciones anteriores (a excepción de la p es, probablemente, w/2).

Puede usted por favor me ayude o sugerir una mejor manera?

A continuación es la actual imagen de mi tarjeta de juego, donde estoy tratando de colocar la parte inferior de las tarjetas en una curva (alrededor del jugador avatar):

enter image description here

ACTUALIZACIÓN: he renunciado a la curva por el momento y trató de resolver la ecuación

y = px^2 + qx + r

para los 3 puntos y consiguió:

p = 4b / w^2
q = - pw
r = h - 2b

Esto me da bastante bien la colocación de la tarjeta:

enter image description here

Pero si alguien postea una solución completa para la curva, eso sería genial.

Mis habilidades matemáticas son demasiado oxidada y yo probablemente hacer algunos errores básicos mientras que la solución de...

1voto

Hemeroc Puntos 111

Yo intentaría encontrar el radio del círculo mediante la solución de $r^2=(r-b)^2+(w/2)^2$.
El ángulo $\gamma$ entre los radios a los puntos externos (en la frontera de la pantalla) debe ser la solución de $\sin \gamma/2=\dfrac{w/2}{r}$.
¿Creo que algunos retoques con que podrían llevarle en algún lugar?

(de hecho $p=w/2$, $q=h+r-3b$)

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