Contenido principal
Animación digital
Curso: Animación digital > Unidad 3
Lección 2: Codifica tu propia simulación- Empezar con partículas
- Paso 1 (partícula bajo gravedad)
- El sistema masa-resorte en una dimensión
- Paso 2 (sistema masa-resorte)
- El amortiguamiento
- Paso 3 (sistema masa-resorte amortiguado)
- El sistema masa-resorte en dos dimensiones
- Paso 4 (sistema masa-resorte en 2D)
- Un sistema de múltiples masas y resortes
- Paso 5 (un sistema de múltiples masas y resortes)
© 2023 Khan AcademyTérminos de usoPolítica de privacidadAviso de cookies
El sistema masa-resorte en dos dimensiones
Ahora le agregamos una componente horizontal a nuestro sistema.
¿Quieres unirte a la conversación?
- sí hasta ahora hemos limitado nuestra simulación a solamente tener movimiento vertical pero queremos que nuestro cabello se mueva en varias direcciones así que tenemos que actualizar nuestro código para incluir dos dimensiones de movimiento es bastante fácil hacer esto solo tenemos que duplicar muchas de nuestras variables de modo que tengamos tanto la componente x como la jep por ahora solo tenemos la posición inicial vertical llamada posición white así que voy a agregar una nueva llamada posición x también voy a agregar una nueva variable para almacenar la componente horizontal de la velocidad a esta la voy a llamar velocity ex y debe ser inicializa da igual a cero igual que velocity white porque nuestra partícula comienza desde el reposo ahora voy a ir a la función draw y duplicar la ecuación de modo que también tengamos una componente horizontal por el momento hay una fuerza de resorte spring force white pero no hay spring force ex voy a agregar la ahora springs force ex es igual a menos cada multiplicada por posición x menos 5 ex voy a agregar una nueva variable que se llama jumping force ex y la voy a hacer igual laden ping multiplicada por velocity ex con estas nuevas variables puedo agregar un nuevo cálculo de fuerza neta en la dirección x llamada force ex esta va a ser un poco diferente a force why porque podemos ignorar la gravedad ya que la fuerza de gravedad sólo actúa en la dirección vertical así que force x es igual a screen force ex - de ping force ex ahora pasemos a la aceleración voy a agregar una nueva variable llamada a celebration ex y va a ser igual a force ex dividida entre la masa hagamos lo mismo con la velocidad resultante voy a agregar una nueva variable llamada velocity ex que es igual a velocity ex más a celebration ex multiplicada por time step por último podemos actualizar la posición de modo que también tenga una componente horizontal esto lo voy a hacer con una variable llamada position x la cual es igual la posición x más velocity ex multiplicada por time step ahora ya tenemos las componentes xy separa la fuerza la aceleración la velocidad y la posición ahora sólo tenemos que actualizar nuestro código d de modo que el círculo que representa a nuestra particular y la línea que representa a nuestro resorte se puedan mover en la dirección x simplemente voy a agregar posición x al final de la línea que está conectada a la masa y para el círculo que representa nuestra masa le voy a agregar posición ex a su posición central ahora ve qué pasa cuando ejecuto el código si movimiento en dos dimensiones para hacer nuestras películas hacemos lo mismo pero en tres dimensiones usando una tercera componente z ese es un buen proyecto adicional en el cual puedes empezar a pensar pero vamos a pausar aquí para que puedas estar cómodo con este código antes de avanzar al último paso(2 votos)
- porque ya nadie escribe?(2 votos)
Transcripción del video
sí hasta ahora hemos limitado nuestra simulación a solamente tener movimiento vertical pero queremos que nuestro cabello se mueva en varias direcciones así que tenemos que actualizar nuestro código para incluir dos dimensiones de movimiento es bastante fácil hacer esto solo tenemos que duplicar muchas de nuestras variables de modo que tengamos tanto la componente x como la jep por ahora solo tenemos la posición inicial vertical llamada posición white así que voy a agregar una nueva llamada posición x también voy a agregar una nueva variable para almacenar la componente horizontal de la velocidad a esta la voy a llamar velocity ex y debe ser inicializa da igual a cero igual que velocity white porque nuestra partícula comienza desde el reposo ahora voy a ir a la función draw y duplicar la ecuación de modo que también tengamos una componente horizontal por el momento hay una fuerza de resorte spring force white pero no hay spring force ex voy a agregar la ahora springs force ex es igual a menos cada multiplicada por posición x menos 5 ex voy a agregar una nueva variable que se llama jumping force ex y la voy a hacer igual laden ping multiplicada por velocity ex con estas nuevas variables puedo agregar un nuevo cálculo de fuerza neta en la dirección x llamada force ex esta va a ser un poco diferente a force why porque podemos ignorar la gravedad ya que la fuerza de gravedad sólo actúa en la dirección vertical así que force x es igual a screen force ex - de ping force ex ahora pasemos a la aceleración voy a agregar una nueva variable llamada a celebration ex y va a ser igual a force ex dividida entre la masa hagamos lo mismo con la velocidad resultante voy a agregar una nueva variable llamada velocity ex que es igual a velocity ex más a celebration ex multiplicada por time step por último podemos actualizar la posición de modo que también tenga una componente horizontal esto lo voy a hacer con una variable llamada position x la cual es igual la posición x más velocity ex multiplicada por time step ahora ya tenemos las componentes xy separa la fuerza la aceleración la velocidad y la posición ahora sólo tenemos que actualizar nuestro código d de modo que el círculo que representa a nuestra particular y la línea que representa a nuestro resorte se puedan mover en la dirección x simplemente voy a agregar posición x al final de la línea que está conectada a la masa y para el círculo que representa nuestra masa le voy a agregar posición ex a su posición central ahora ve qué pasa cuando ejecuto el código si movimiento en dos dimensiones para hacer nuestras películas hacemos lo mismo pero en tres dimensiones usando una tercera componente z ese es un buen proyecto adicional en el cual puedes empezar a pensar pero vamos a pausar aquí para que puedas estar cómodo con este código antes de avanzar al último paso