Difference between revisions of "FSOSS 2010/processing.js/vectors"
(Created page with '<b>Vectors</b> <ul> <li>Object with a direction and magnitude (length)</li> <li>Typically represented using coordinates for simplicity</li> <li>Used for storing position, velo…') |
|||
(3 intermediate revisions by the same user not shown) | |||
Line 5: | Line 5: | ||
<li>Used for storing position, velocity, acceleration, etc.</li> | <li>Used for storing position, velocity, acceleration, etc.</li> | ||
<li>Processing has a built-in <b>PVector</b> object for 2D and 3D</li> | <li>Processing has a built-in <b>PVector</b> object for 2D and 3D</li> | ||
+ | </ul> | ||
+ | |||
+ | <b>Operations</b><br /> | ||
+ | <br /> | ||
+ | <b>Addition</b> | ||
+ | <ul> | ||
+ | <li>Graphically -> add head to tail</li> | ||
+ | <li>Algebraically -> add components [3, 3] + [1, 2] = [4, 5]</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> | ||
+ | |||
+ | <b>Scale</b> | ||
+ | <ul> | ||
+ | <li>Graphically -> stretch or shrink</li> | ||
+ | <li>Algebraically -> multiply components by scalar [1,3] * 2 = [2, 6]</li> | ||
+ | <li>PVector.mult(float);</li> | ||
+ | </ul> | ||
+ | |||
+ | <b>Calculate Magnitude</b> | ||
+ | <ul> | ||
+ | <li>Graphically -> measure length</li> | ||
+ | <li>Algebraically -> use Pythagorean theorem</li> | ||
+ | <li>PVector.mag()</li> | ||
</ul> | </ul> |
Latest revision as of 07: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()