Basketball training system
A basketball training system includes a server computer and a basketball training machine. The server computer executes a workout module that manages operation of a graphical user interface that presents a graphical representation of a portion of a basketball court and receives user inputs that define a workout program that includes selected ball delivery locations relative to the visual representation. The basketball training machine receives the workout program and delivers basketballs to the selected ball delivery locations.
1. A basketball training system comprising:
a user interface that is configured to (i) present a visual representation of a portion of a basketball playing surface and (ii) receive one or more user inputs relative to the visual representation that identify one or more selected ball delivery locations and one or more selected shot locations that are different than the selected ball delivery locations; and
a ball delivery machine that is configured to deliver basketballs to physical locations corresponding to the one or more selected ball delivery locations identified by the received one or more user inputs, the ball delivery machine comprising:
a controller that is in communication with the user interface and that is configured to provide control commands based on the received one or more user inputs, the controller comprising one or more processors and a computer-readable storage medium, and
a ball launcher that is configured to launch basketballs to the physical locations corresponding to the one or more selected ball delivery locations based on the control commands provided by the controller.
2. The basketball training system of claim 1 , wherein the one or more user inputs that identify the one or more selected ball delivery locations and the one or more selected shot locations comprise drag-and-drop inputs.
3. The basketball training system of claim 1 , wherein the user interface presents graphical control elements as icons that are movable via a drag-and-drop input.
4. The basketball training system of claim 1 , wherein the one or more selected ball delivery locations comprise one or more arbitrarily selectable ball delivery locations that are not restricted to predetermined ball delivery locations.
5. The basketball training system of claim 1 ,
wherein in response to receiving a user input that selects a stored workout program, the user interface is configured to display on the visual representation of the portion of the basketball playing surface the one or more selected ball delivery locations associated with the stored workout program that was selected.
6. The basketball training system of claim 1 ,
wherein the user interface is configured to display a graphical icon corresponding to a ball delivery machine location with respect to the visual representation of the portion of the basketball playing surface.
7. A computer-implemented method comprising:
presenting, by a user interface, a visual representation of a portion of a basketball playing surface;
receiving, by the user interface, one or more user inputs relative to the visual representation that identify one or more selected ball delivery locations and one or more selected shot locations that are different than the selected ball delivery locations;
delivering, by a ball delivery machine, basketballs to physical locations corresponding to the one or more selected ball delivery locations identified by the received one or more user inputs, comprising:
providing, by a controller that is in communication with the user interface and that comprises one or more processors and a computer-readable storage medium, control commands based on the received user inputs, and
launching, by a ball launcher, basketballs to the physical locations corresponding to the one or more selected ball delivery locations based on the control commands provided by the controller.
8. The method of claim 7 , wherein the one or more user inputs that identify the one or more selected ball delivery locations and the selected shot locations comprise drag-and-drop inputs.
9. The method of claim 7 , wherein the user interface presents graphical control elements as icons that are movable via a drag-and-drop input.
10. The method of claim 7 , wherein the one or more selected ball delivery locations comprise arbitrarily selectable ball delivery locations that are not restricted to predetermined ball delivery locations.
11. The method of claim 7 , wherein in response to receiving a user input that selects a stored workout program, the user interface is configured to display on the visual representation of the portion of the basketball playing surface the one or more selected ball delivery locations associated with the stored workout program that was selected.
12. The method of claim 7 , wherein the user interface is configured to display a graphical icon corresponding to a ball delivery machine location with respect to the visual representation of the portion of the basketball playing surface.
13. A non-transitory computer-readable medium storing instructions that, when executed by one or more processors, cause the one or more processors to perform operations comprising:
presenting, by a user interface, a visual representation of a portion of a basketball playing surface;
receiving, by the user interface, one or more user inputs relative to the visual representation that identify one or more selected ball delivery locations and one or more selected shot locations that are different than the selected ball delivery locations;
delivering, by a ball delivery machine, basketballs to physical locations corresponding to the one or more selected ball delivery locations identified by the received one or more user inputs, comprising:
providing, by a controller that is in communication with the user interface, control commands based on the received user inputs, and
launching, by a ball launcher, basketballs to the physical locations corresponding to the one or more selected ball delivery locations based on the control commands provided by the controller.
14. The medium of claim 13 , wherein the one or more user inputs that identify the selected ball delivery locations and the one or more selected shot locations comprise drag-and-drop inputs.
15. The medium of claim 13 , wherein the user interface presents graphical control elements as icons that are movable via a drag-and-drop input.
16. The medium of claim 13 , wherein the one or more selected ball delivery locations comprise arbitrarily selectable ball delivery locations that are not restricted to predetermined ball delivery locations.
17. The medium of claim 13 , wherein in response to receiving a user input that selects a stored workout program, the user interface is configured to display on the visual representation of the portion of the basketball playing surface the one or more selected ball delivery locations associated with the stored workout program that was selected.
18. The medium of claim 13 , wherein the user interface is configured to display a graphical icon corresponding to a ball delivery machine location with respect to the visual representation of the portion of the basketball playing surface.