Skip to content

Latest commit

 

History

History
230 lines (177 loc) · 10.9 KB

week2.asciidoc

File metadata and controls

230 lines (177 loc) · 10.9 KB

Nature of Code: Week 2

What is a vector?

Confused by this video?

Post any questions or comments here.

The PVector class

Confused by this video?

Post any questions or comments here.

Basic Vector Math

Confused by this video?

Post any questions or comments here.

Confused by this video?

Post any questions or comments here.

Motion 101: Location, Velocity, Acceleration

Confused by this video?

Post any questions or comments here.

Newton’s Laws of Motion: F = M*A

Confused by this video?

Post any questions or comments here.

  • This video discusses the definition of a "force" as well as an overview of Newton’s 3 laws of motion.

  • Read along in the Nature of Code Chapter 2

Applying a force

Confused by this video?

Post any questions or comments here.

Incorporating mass

Confused by this video?

Post any questions or comments here.

Forces Case Study: Friction and Drag

Confused by this video?

Post any questions or comments here.

Confused by this video?

Post any questions or comments here.

Forces Case Study: Gravitational Attraction

Homework Week 2

Choose one or create your own. Post your work as a link in the comments below.

  • Rework your motion sketch from week 1 using PVector. Try incorporating the concept of forces into the environment by affecting only the acceleration. Create a formula for calculating a dynamic acceleration, one that changes over time based on any number of factors. What happens if you make more than one object via an array.

  • Using forces, simulate a helium-filled balloon floating upward (and bouncing off the top of a window). Can you add a wind force which changes over time, perhaps according to Perlin noise?

  • Create an example where instead of objects bouncing off the edge of the wall, an invisible force pushes back on the objects to keep them in the window. Can you weight the force according to how far the object is from an edge, i.e. the closer it is, the stronger the force?

  • Create pockets of air resistance / friction in a Processing sketch. Try using circles instead of rectangles, i.e. pockets of mud (or ice). What if you vary the strength (drag / friction coefficient) of each circle? What if you make some of them the opposite of drag—i.e., when you enter a given pocket you actually speed up instead of slow down?

  • Can you create an example where all of the Mover objects are attracted to the mouse, but repel each other? Think about how you need to balance the relative strength of the forces and how to most effectively use distance in your force calculations.

  • Research a force not covered in class and implement it as a vector.

  • Use the concept of forces to visualize some input (could be data, literal example would be get windspeed online and translate to a wind force in Processing, but feel free to think more abstractly)

  • Build a sketch that has both "Movers" and "Attractors". What if you make the Attractors invisible? Can you create a pattern / design from the trails of objects moving around attractors? See the Metropop Denim project by Clayton Cubitt and Tom Carden for an example.

Just as with last week, please create a web page to document your homework. Make sure it include some visual documentation of your work as well as the source code.

Supplemental Reading