Your instructor will assign one or more of the following problems. Submit all appropriate files for grading, including code files, screen captures, supplemental files (e.g., image files), and text files.
Modify the Calgorithmic musicbox system to implement appropriate error checking for the following file read errors:
Include test cases exercising all your new error checking code.
Extend the Calgorithmic musicbox to handle chords, that is playing more than one note at a time in a single part. Your system should be able to read and play any of the following parts from Chopsticks: ChopSticksSoloVerse.txt, ChopSticksSoloBridge.txt, or ChopSticksAccompaniment.txt.
Note that when you upgrade your Chord
class to represent a list of pitches,
you’ll need to use List<Integer>
(rather than a list of int
s). Lists require reference types.
Extra Credit: Implement the complete chopsticks song by playing the verse with the accompaniment and then the bridge with the accompaniment. You will need to work through all the lab exercises before you can do this.
Create an animation controller such as the one shown here.
This application loads a sequence of images (here, the images are from Eadweard Muybridge’s iconic early work on animation) and presents those images one-at-a-time in sequence. To help you focus on working with lists and files, we are providing several resources with which to begin ( download this zip file: horseAnimation.zip ). Once you have unzipped, you should have:
You are welcome to implement this program as you see fit, but here are some algorithmic steps that may help:
myImage
in the panel to instead be a list of
images
horseImageFilenames.txt
).
At a minimum, your program must run the animation in a continuous loop and allow the user to pause and play the animation using the buttons. For extra credit, you may also add additional animation controls and a message panel as shown in the picture above.
Submit all appropriate files for grading, including code files, screen captures, supplemental files (e.g., image files), and text files. We will grade this exercise according to the following criteria:
If you work in teams for this homework assignment, be sure to submit all team members’ names in the code documentation.