To illistrate, imagine a carom billiard table (twice as long as wide with no pockets), where one can locate any point on the table using the Cartesian coordinate system. Let the lower left corner be (0,0) and the upper-right corner (8,4).
A cue ball at (2,2) needs to be aimed at diamond 4 1/2 on the south cushion so it can strike the other two balls at (5,3) and (5, 2 1/2)
The "Diamond System" is one way to help figure out the correct
place to aim the cue ball. In this example we have a cue position of 5, and a
natural angle of 1 1/2, so the diamond to aim at
is
The "Diamond system"
The Diamond system is used in 3-cushion billiards find a place to aim the cue ball so that it strikes 3 cushions before hitting any balls.
This system has three steps:
Puzzles and Experiments:
1. How many ways can you hit a certain ball bouncing off the same cushion?
2. In 3-Cushion billiards the object of the game is to hit the first ball, and 3 or more cushions before hitting the second ball. Can you design so trick shots? A "system" (Sorry--this version of Pool does not move balls that have been "hit"...maybe later...of if someone else would like to adapt this program to do this...(send me e-mail; I'd like to know)
3. If you hit the ball hard (200), is it easier to design a way that hits *all* the balls or finding a way that *avoids* all of them?
4. Can you make the path of the ball into an interesting shape like a fish, star or snowflake?
Mathematica
Instructions:Open and evaluate the initialization cells of "Pool.ma" if it has not already been started.
To change the location of any ball type and evaluate:
WhiteBall={2,4}
or
RedBall = {1,1.8]
or
BlueBall = { 2, 1 Sqrt[3] }
To show the pool table type and evaluate:
Show[PoolTable]
To Shoot a ball, just list it in the same "Show" statement:
Show [PoolTable, ShootBall [ WhiteBall, down, 3, 4] ]
The "ShootBall" command needs four things:
So the statement above will show the path of the white ball if it was aimed at the third dot on the bottom cushion, and bounced against four cushions.
Other examples:
WhiteBall={4, 3};
RedBall={5.25,3.25};
BlueBall={5.5, 3};
Show[PoolTable, ShootBall[WhiteBall, down, 6.5, 4]];
If you use both the calculator and the computer, the following terms are equivalent:
dot = diamond
Ball1 = cue ball = WhiteBall
Ball2 = target = RedBall
Ball3 = " = BlueBall