Search code examples
physicscollision-detectionbilliards

Ball to Ball Collision


I read the page Ball to Ball Collision - Detection and Handling and am a bit confused about the code for resolve_collision. I get everything except what is 1.0f + Constants.restitution? What is 1.0f and what is Constants.restitution?


Solution

  • The 1.0f is the literal for a floating point 1.0. In Java, 1.0 will default to type double, so the author is explicitly making it a float by adding the f flag afterwards.

    Constants.restitution supposedly represents the coefficient of restitution, which is usually an e or Cr in physics. This defines how much a ball bounces once it hits the floor or another ball. Though he doesn't show it in the code he provided, it is probably declared somewhere as

    public class Constants {
        public static final float restitution = 0.8f;
    }