A simple bank shot into the right side hole

Geometry Level 3

In a simulation of a pool game, the pool table is a rectangle with a horizontal width of 15 units and a vertical length of 30 units.

The left bottom corner of this rectangle is at the origin of an x y xy reference frame with standard orientation. You have two billiard balls of radius 1 unit, the first is the cue ball (drawn in light green) and is placed at ( 10 , 10 ) (10,10) , the second is the target ball and is placed at ( 6 , 12 ) (6,12) . You want to shoot the cue ball (green) in a certain direction, such that it collides with the target ball, causing it to move towards the left bank and reflect off it into the target point which, in this problem, is the right side pocket, whose coordinates are ( 15 , 15 ) (15, 15) . Find the angle θ \theta that the direction of your shot of the cue ball makes with the positive x x -axis, in radians , and report 1000 θ \lfloor 1000 \hspace{4pt} \theta \rfloor .


The answer is 2446.

This section requires Javascript.
You are seeing this because something didn't load right. We suggest you, (a) try refreshing the page, (b) enabling javascript if it is disabled on your browser and, finally, (c) loading the non-javascript version of this page . We're sorry about the hassle.

1 solution

Steven Chase
May 2, 2019
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
import math

R = 1.0    # radius

xf = 15.0  # mid right corner coordinates
yf = 15.0

x1 = 10.0   # shooting ball initial coordinates
y1 = 10.0

x2 = 6.0   # target ball coordinates
y2 = 12.0

####################

# x and y travel distances
# for target ball

travel_dist_x = (x2 - R) + (xf - R)
travel_dist_y = yf - y2

mag = math.hypot(travel_dist_x,travel_dist_y)

# unit vector in direction of target ball velocity post-collision

ux = -travel_dist_x/mag
uy = travel_dist_y/mag

####################

x1c = x2 - 2.0*R*ux  # shooting ball center coordinates at collision
y1c = y2 - 2.0*R*uy  


####################

Dx = x1c - x1        # vector from shooting ball starting location.........
Dy = y1c - y1        # ........to collision location

theta = math.atan2(Dy,Dx)  # angle

####################

print (180.0 * theta / math.pi)
print math.floor(1000.0*theta) # answer is 2446

0 pending reports

×

Problem Loading...

Note Loading...

Set Loading...