Advanced features of the Stepdance Software Library
In this guide we will be using your own code from Project 1, as a way to share with the class the advanced features you all have started using in the software library.
Assignment
Each team is assigned a topic from their Project 1 source code that we believe is quite neat and worth sharing with the class. They should be prepared to spend 5 minutes max to walk everyone through the code, followed by 2 minutes of questions and additional explanations from instructors.
Features and teams
The topics assigned are the following. For each topic we linked what we believe are relevant parts of your code, as well as related resources from the software library documentation website. Please feel free to start from there, and show any other interesting bits.
| Teams | Topic | Code links |
|---|---|---|
| Team Pancho | Pre-planned pattern with TimeBasedInterpolator + Button push trigger | Drawing a set of vertical lines and Button triggered execution |
| Team O | Setting parameters through Serial commands VS through AnalogInput | Serial command version and AnalogInput version |
| Team Fish | Sending Serial commands through P5 with p5.serialcontrol | Arduino sketch and P5 sketch |
| Team Cook | Drawing circular motifs with KinematicsPolarToCartesian | With generators and with TimeBasedInterpolator |
Topics
Without needing to be super exhaustive, you can aim to help your classmates understand the following ideas:
- What does the code do? eg, what happens when the code runs? People have seen your demo last week, so you can refer to that, it might be helpful to point to your project documentation media.
- If there are variables involved, what do they correspond to in the final output?
- When does the code execute? What event triggers execution, if anything?
- Is the effect instantaneous or does it apply over time?
- How does the code do that?
- What elements have to be in place for this code to run correctly? eg, what lines of code did you have to write/modify, what specific software or hardware setup does the code need to work
- What feature(s) of the software library are you relying on? What does the library handle for you?
- Why use this feature + any special remarks and tips:
- Why is that feature well-suited to achieve your goals?
- What tips would you give to a classmate wanting to try that feature?
Material you can use for your walk-through:
- Source code (uploaded on your team's github)
- Project documentation page
- Stepdance software library documentation
- Whiteboard for drawing
Instructors will be there to jump in and add to your explanation, we do not expect you to understand everything about the software library :)