Elliptical billiard
Calculate a finite billiard path and inspect reflection angles and focus distances.
About this tool
Inspect a finite billiard path
Set the ellipse’s semiaxes a and b, a starting mode, direction and number of reflections. Calculate shows the full path and selects its first reflection. The number field and native slider select another computed reflection. Clear result keeps the inputs. Changing any model input clears the old path; only the direction fields relevant to the chosen starting mode are active.
Ellipse and starting direction
The boundary is x²/a² + y²/b² = 1, with a ≥ b. The foci are F₁ = (−c,0) and F₂ = (c,0), where c = √[(a − b)(a + b)]. All coordinates, distances and semiaxes use one freely chosen length unit.
A focus start begins exactly at F₁. Its direction α is measured counterclockwise from +x. A boundary start begins at (a cosφ, b sinφ). φ is the ellipse’s parameter angle; it is not the point’s polar angle when a and b differ.
At a boundary start, let n be the outward unit normal and t = (−n_y,n_x) the positively oriented unit tangent. The starting direction is u = −cosδ n + sinδ t. Thus δ = 0 points along the inward normal; positive δ tilts toward the positive tangent. The allowed range −89°…89° excludes an exactly tangent start, which has no positive inward flight.
Reflection and the focus rule
For an incoming unit direction u, ideal specular reflection gives u′ = u − 2(u·n)n. The displayed incidence and reflection angles are measured to the normal, not to the tangent. The arcs use the inward normal as their reference. The two angles are equal. Arrowheads indicate the directions of travel; the normal arrow points outward.
A ray from one focus reflects through the other focus. The focus-start family therefore alternates between F₂ and F₁ after successive reflections. The displayed focus distances are the minimum distances from each focus to the actual outgoing finite segment, including its endpoints. They do not describe the distance to an infinite line or a moving animation marker. Small floating-point residuals are displayed rather than rounded indiscriminately to zero.
For a = 1.5, b = 1 and a focus direction of 35°, the first hit is approximately (0.2842390227, 0.9818821332). Both angles are approximately 47.6686298954°, and the outgoing segment passes through F₂. In the square-circle example, the successive hits are (0,1), (−1,0), (0,−1), (1,0). When a = b the foci coincide at the center; the graphic labels them together. A circle-diameter path has a normal-incidence angle of 0°.
Counting and scope
For k selected reflections, the path contains k + 1 flight segments: one incoming segment before the first reflection, plus one outgoing segment after every reflection. The last endpoint is included to show the final outgoing flight and is not reflected again. Total path length includes all k + 1 segments; length to this hit stops at the selected collision.
The input limits are a and b from 0.2 to 5, b ≤ a, global direction and boundary parameter angle from −180° to 180°, tilt from −89° to 89°, and 1…24 reflections. These are product limits, not limits of the reflection law. This is ideal point-particle geometry with straight free flights and specular boundary reflections, without a model for friction or deformation.
Source
Herman Serras, Ghent University: Billiards — reflection geometry, normal and tangent bisectors, the focus rule and the circular case.