Contenido principal
Programación de computadoras
Curso: Programación de computadoras > Unidad 5
Lección 6: Movimiento angular- Ángulos y unidades
- Desafío: bastón giratorio
- Velocidad angular
- Desafío: roca que cae
- Trigonometría
- Razones trigonométricas en triángulos rectángulos
- Apuntar hacia el movimiento
- Desafío: coche que gira
- Coordenadas polares
- Desafío: dibujante de espirales
- Proyecto: la nave espacial del juego Asteroides
© 2023 Khan AcademyTérminos de usoPolítica de privacidadAviso de cookies
Coordenadas polares
Cada vez que desplegamos una figura en ProcessingJS, tenemos que especificar la ubicación en pixeles, un conjunto de coordenadas
x
y y
. Estas coordenadas se conocen como coordenadas cartesianas, en honor a René Descartes, el matemático francés que desarrolló las ideas del plano cartesiano.Otro sistema de coordenadas muy útil, conocido como coordenadas polares, describe un punto en el espacio como un ángulo de rotación alrededor del origen y un radio desde el origen. Pensándolo en términos de un vector:
- Coordenadas cartesianas: las componentes x,y de un vector
- Coordenadas polares: la magnitud (longitud) y dirección (ángulo) de un vector
Sin embargo, las funciones para dibujar en ProcessingJS no entienden coordenadas polares. Cuando queremos desplegar algo en ProcessingJS, necesitamos especificar una ubicación como coordenada cartesiana (x,y). Sin embargo, a veces es mucho más conveniente para nosotros pensar en coordenadas polares cuando estamos diseñando. Afortunadamente para nosotros, con trigonometría podemos pasar de coordenadas polares a cartesianas y de regreso, lo que nos permite diseñar con cualquier sistema de coordenadas que necesitemos, pero siempre dibujar con coordenadas cartesianas.
La letra griega θ (theta) usualmente se usa para denotar un ángulo y convencionalmente nos referimos a una coordenada polar como (r, θ), en lugar de (x, y). Entonces, cuando hablemos de coordenadas polares, "theta" será el nombre preferido de nuestra variable para el ángulo.
seno(theta) = y/r → y = r * seno(theta)coseno(theta) = x/r → x = r * coseno(theta)
Por ejemplo, si
r
es 75 y theta
es 45 grados (o PI/4 radianes), podemos calcular x
y y
como se muestra a continuación. Las funciones seno y coseno en ProcessingJS son sin()
y cos()
, respectivamente. Cada una tiene un argumento, un ángulo medido en grados.var r = 75;
var theta = 45;
// Convertir coordenada polar a cartesiana
var x = r * cos(theta);
var y = r * sin(theta);
Este tipo de conversión puede ser útil en ciertas aplicaciones. Por ejemplo, mover una figura alrededor de una trayectoria circular con coordenadas cartesianas no es tan fácil. Con coordenadas polares, por otro lado, es sencillo: ¡incrementa el ángulo!
Aquí está cómo podemos rotar una figura sencilla al usar la conversión a coordenadas polares:
Este curso de "Simulaciones Naturales" es un derivado de "La Naturaleza del Código" por Daniel Shiffman, usado bajo una Licencia Creative Commons Reconocimiento-NoComercial 3.0 Unported.
¿Quieres unirte a la conversación?
Sin publicaciones aún.