Polygon Collision calculate velocity and angular velocity

In summary: Keep in mind that this method assumes an ideal, frictionless collision and may not be applicable for real-world scenarios. In summary, to calculate the changes in angular velocity and velocity of two colliding polygons, you need to consider the momentum and energy conservation equations.
  • #1
aircrack
1
0
Hello,

I am trying to simulate collisions between polygons with opengl.
The weight, velocity (as a 2d vector), the angular velocity and the collisionpoint of the colliding polygons are provided.
How can I calculate how the angular velocity and the velocity are changed?

I do know how i could calculate the new velocities in 1d using the momentum:
2f9b6fcd36cd25f6e4f563a7c08e9f54.png

e3b6a72306f7ccbfc078034ce8e833d0.png

In a 2d decentralized collision, disregarding the angular velocity (e.g. using two circles), it would be almost the same, because you can split the velocities in vectors, but i am unsure how to calculate everything including the angular velocity.

Thank you for your help :)

Im sorry if my english is incomprehensible, I am german. ;)
 
Physics news on Phys.org
  • #2
To calculate the new velocities of two colliding polygons, you need to consider the momentum and energy conservation equations. The momentum conservation equation states that the total momentum before and after collision should be conserved. This means that the sum of the momenta (mass x velocity) of each polygon should remain unchanged. For example, if two polygon masses are m1 and m2, and their velocities before collision are v1 and v2, then the velocities after the collision should be v1' and v2' such that m1v1 + m2v2 = m1v1' + m2v2'. You also have to consider the angular velocities of the two polygons before and after collision. The angular velocity of a polygon is given by its moment of inertia multiplied by its angular acceleration. Thus, for two polygons with moments of inertia I1 and I2 and angular accelerations a1 and a2, the angular velocities before and after collision need to satisfy the following condition: I1a1 + I2a2 = I1a1' + I2a2'. Finally, you will need to incorporate the energy conservation equation in your calculations. The energy conservation equation states that the total energy before and after collision should be the same. This means that the sum of the kinetic energies of the two polygons before and after collision should be equal. The kinetic energy of a polygon is given by its mass multiplied by half of its velocity squared. Thus, for two polygons with masses m1 and m2, and velocities v1 and v2 before collision, the velocities after collision should satisfy the following condition: (m1*(v1^2)/2) + (m2*(v2^2)/2) = (m1*(v1'^2)/2) + (m2*(v2'^2)/2). By combining all of the above equations, you can calculate the new velocities of the two polygons after collision.
 

Similar threads

Replies
4
Views
618
Replies
3
Views
2K
Replies
5
Views
1K
Replies
14
Views
2K
Replies
13
Views
2K
Replies
4
Views
1K
Replies
1
Views
1K
Replies
1
Views
1K
Replies
6
Views
2K
Back
Top