Difference between revisions of "FSOSS 2010/processing.js/vectors"

From CDOT Wiki
Jump to: navigation, search
 
Line 13: Line 13:
 
   <li>Graphically -> add head to tail</li>
 
   <li>Graphically -> add head to tail</li>
 
   <li>Algebraically -> add components [3, 3] + [1, 2] = [4, 5]</li>
 
   <li>Algebraically -> add components [3, 3] + [1, 2] = [4, 5]</li>
   <li>PVector.add(PVector)</li>
+
   <li>PVector.add(v1, v2);</li>
 +
  <li>vec.add(v);</li>
 +
</ul>
 +
 
 +
<b>Subtraction</b>
 +
<ul>
 +
  <li>Graphically -> flip the direction of one vector, then add</li>
 +
  <li>Algebraically -> subtract components [3, 3] - [1, 2] = [2, 1]</li>
 +
  <li>PVector.sub(v1, v2);</li>
 +
  <li>vec.sub(v);</li>
 
</ul>
 
</ul>
  
Line 20: Line 29:
 
  <li>Graphically -> stretch or shrink</li>
 
  <li>Graphically -> stretch or shrink</li>
 
  <li>Algebraically -> multiply components by scalar [1,3] * 2 = [2, 6]</li>
 
  <li>Algebraically -> multiply components by scalar [1,3] * 2 = [2, 6]</li>
  <li>PVector.mult(float)</li>
+
  <li>PVector.mult(float);</li>
 
</ul>
 
</ul>
  

Latest revision as of 08:05, 28 October 2010

Vectors

  • Object with a direction and magnitude (length)
  • Typically represented using coordinates for simplicity
  • Used for storing position, velocity, acceleration, etc.
  • Processing has a built-in PVector object for 2D and 3D

Operations

Addition

  • Graphically -> add head to tail
  • Algebraically -> add components [3, 3] + [1, 2] = [4, 5]
  • PVector.add(v1, v2);
  • vec.add(v);

Subtraction

  • Graphically -> flip the direction of one vector, then add
  • Algebraically -> subtract components [3, 3] - [1, 2] = [2, 1]
  • PVector.sub(v1, v2);
  • vec.sub(v);

Scale

  • Graphically -> stretch or shrink
  • Algebraically -> multiply components by scalar [1,3] * 2 = [2, 6]
  • PVector.mult(float);

Calculate Magnitude

  • Graphically -> measure length
  • Algebraically -> use Pythagorean theorem
  • PVector.mag()