CS 106 Winter 2016

Assignment 03: Basic physics


Question 1 Dynadraw


Introduction

In a normal drawing program, the virtual paintbrush follows the mouse (or stylus, or finger) exactly: it tries to move perfectly in sync with the user's gestures. Imagine what would happen, though, If the paintbrush were connected to the mouse location via a spring: as the mouse moved, the spring would stretch, and the brush would rush to catch up with the mouse. It might even overshoot the mouse, and get pulled back the other way. The result would be a curve that doesn't exactly do what you tell it, but that looks very smooth and elegant.

This was the idea behind Dynadraw, a great old technique by the same Paul Haeberli who invented Impressionist in the previous assignment. The easiest way to try Dynadraw is to visit the Javascript version by Roger Allen (go try it!)

In this assignment you'll implement Dynadraw using a physical simulation (which, after all, is precisely what Dynadraw is).


Requirements


Tips


Enhancements

Submission

Remember to review the Code Style Guide and use Processing's built-in auto format tool. Then review the How To Submit document. At the top of all of your source files, be sure to include a comment with your name and student ID number. When you're ready, zip up the Dynadraw sketch (which could, but need not, live in an A03/ folder, and upload that file to LEARN.