<< Chapter < Page | Chapter >> Page > |
A parallelogram
Note the point where the two lines intersect. The two lines and the two vectors should now form a parallelogram as shown in Figure 5 .
Solving for the resultant vector
According to the parallelogram law, the resultant vector, vecAC, is represented by a directed line that extends from point A to the intersection ofthe two lines that you constructed earlier. In other words, the sum of the two vectors is equal to a diagonal line that extends from the starting point to theopposite corner on the parallelogram that you constructed.
Subtracting vectors
In normal arithmetic subtraction, a subtrahend is subtracted from a minuend to find a difference .
To subtract a subtrahend vector from a minuend vector (in a plane), add 180 degrees to the direction of the subtrahend vector, causing it to point in theopposite direction, and add the modified subtrahend vector to the minuend vector.
If you subtract vecAB in the above example from vecBC, you should be able to show that the difference vector is represented by the other diagonal in theparallelogram. However, you will probably find it easier to do this mathematically rather than doing itgraphically.
The horizontal component of the sum of two or more vectors is the sum of the horizontal components of the vectors.
The vertical component of the sum of two or more vectors is the sum of the vertical components of the vectors.
The horizontal and vertical components
The horizontal and vertical components respectively of a vector vecAB are equal to
where
The magnitude of the resultant vector
Given the horizontal and vertical components of the resultant vector, the magnitude of the resultant vector can be found using the Pythagorean theorem asthe square root of the sum of the squares of the horizontal and vertical components.
The angle of the resultant vector
The angle that the resultant vector makes with the horizontal axis is the arctangent (corrected for quadrant) of the ratio of the vertical component tothe horizontal component.
We will need to deal with several issues that arise when using the Math.atan method. Therefore, I will write a script that contains a function to deal with those issues. Then we can simply copy that function intofuture scripts without having to consider those issues at that time.
Please copy the code shown in Listing 1 into an html file and open the file in your browser.
Listing 1 . Using the Math.atan method. |
---|
<!-- File JavaScript01.html --><html><body><script language="JavaScript1.3">//The purpose of this function is to receive the adjacent
// and opposite side values for a right triangle and to// return the angle in degrees in the correct quadrant.
function getAngle(x,y){if((x == 0)&&(y == 0)){
//Angle is indeterminate. Just return zero.return 0;
}else if((x == 0)&&(y>0)){
//Avoid divide by zero denominator.return 90;
}else if((x == 0)&&(y<0)){
//Avoid divide by zero denominator.return -90;
}else if((x<0)&&(y>= 0)){
//Correct to second quadrantreturn Math.atan(y/x)*180/Math.PI + 180;
}else if((x<0)&&(y<= 0)){
//Correct to third quadrantreturn Math.atan(y/x)*180/Math.PI + 180;
}else{//First and fourth quadrants. No correction required.
return Math.atan(y/x)*180/Math.PI;}//end else
}//end function getAngle//Test for a range of known angles.
var angIn = 0;var angOut = 0;
var x = 0;var y = 0;
while(angIn<= 360){
x = Math.cos(angIn*Math.PI/180);y = Math.sin(angIn*Math.PI/180);
angOut = getAngle(x,y).toFixed(1);document.write("angle = " + angOut + "<br/>");
angIn = angIn + 30;}//end while loop
document.write("The End")</script></body></html> |
Notification Switch
Would you like to follow the 'Game 2302 - mathematical applications for game development' conversation and receive update notifications?