<< Chapter < Page Chapter >> Page >

Store the resulting magnitude in the array object

Once the array object is created, the code in the function shown in Listing 3 is essentially the same as the code used earlier to add two vectors, down to thestatement that begins with:

vecResult[0] = Math.sqrt(Math.pow(vecResultH,2) +...

That statement computes the magnitude of the resultant vector the same way as before, but instead of storing the value of the magnitude in a variable, it isstored in the first pigeon hole of the array object.

The value is directed into the first pigeon hole (technically called element) by the "[0]" that you see following the name of the array object in that statement.

Store the resulting angle in the array object

Immediately thereafter, the statement in Listing 3 that reads

vecResult[1] = getAngle(vecResultH,vecResultV);

computes the angle for the resultant vector and stores it in the second element in the array object (the element identified by the index value 1).

Return the array object for use later

These same index values along with the square brackets "[ ]" will be usedlater to retrieve the magnitude and angle values from the array object.

Finally, the function returns the array object to the calling script by executing the statement that reads

return vecResult;

The main script body

The main script body begins where indicated by the comment in Listing 3 .

The first four statements establish values for the magnitude and direction of the two vectors that represent the train and the man. There is nothing in thosestatements that you haven't seen before.

Note the treatment of the units

However, I encourage you to pay attention to the treatment of units in the comments for the value stored in the variable named vecManMag . The arithmetic in that statement uses two different conversion factors toconvert the value from feet per second to miles per hour.

Once again, working through the units in this fashion can help you to organize your arithmetic correctly.

Call the vectorSum function

The statement that begins

var resultant = vectorSum(vecTrainMag...

calls the new vectorSum function to add the two vectors, passing the magnitude and angle for each vector as parameters.

Store the returned array object in a variable

This statement also declares a new variable named resultant . The array object that is returned from the vectorSum function is stored in this variable.

Once this statement finishes executing, the magnitude and angle of the resultant vector have been computedand saved for later use. (In this script, the only use of those two values is to display them later. However, they will be used in a more significant way inanother exercise later.)

Code to display the results

The call to the vectorSum function is followed by three calls to the document.write method. The first two calls display magnitude and angle values, and the third call simply displays some text to indicate that the script has finishedexecuting.

Displaying the magnitude value

If you examine the statement containing the first call to the document.write method, you will seethat the argument list contains the following expression:

Get the best College algebra course in your pocket!

Source:  OpenStax, Game 2302 - mathematical applications for game development. OpenStax CNX. Jan 09, 2016 Download for free at https://legacy.cnx.org/content/col11450/1.33
Google Play and the Google Play logo are trademarks of Google Inc.

Notification Switch

Would you like to follow the 'Game 2302 - mathematical applications for game development' conversation and receive update notifications?