<< Chapter < Page Chapter >> Page >
Listing 18 . Do the same operations in a different order.
//Draw vecB in GREEN with its tail at the origin. g2D.setColor(Color.GREEN);vecB.draw(g2D,new GM2D04.Point( new GM2D04.ColMatrix(0,0)));//Draw vecA in RED with its tail at the head of vecB. g2D.setColor(Color.RED);vecA.draw(g2D,new GM2D04.Point(new GM2D04.ColMatrix( vecB.getData(0),vecB.getData(1))));//Define a fourth vector as the sum of the first // two vectors defined above by adding vecA to vecB.GM2D04.Vector sumB = vecB.add(vecA);//Draw sumB in BLACK with its tail at the origin. // The head will coincide with the head of the// red vecA, and the visual manifestation of sumB will // overlay the visual manifestation of sumAg2D.setColor(Color.BLACK); sumB.draw(g2D,new GM2D04.Point(new GM2D04.ColMatrix(0.0,0.0))); }//end drawOffScreen

Then Listing 18 creates another vector by adding the red and green vectors and refers to the new vector as sumB . In the case of Listing 17, vecB is added to vecA to produce sumA . In Listing 18, vecA is added to vecB to produce sumB . In other words, the two addition operations are performed in reverse order in the twolistings. As I have mentioned before, the order in which you add vectors doesn't matter. The result will be the same no matter the order in which youadd them.

This is demonstrated in Listing 18 by drawing the vector referred to by sumB in black. As you can see in Figure 4 , the drawing of sumB overlays the earlier drawing of sumA and you can't tell one from the other.

(You know that the length of the two vectors is the same because the little circles at the heads of the two vectors overlay one another. You knowthat the directions are the same because sumB completely covers sumA .)

That concludes the discussion of the program named VectorAdd02 .

The program named VectorAdd03

This program illustrates the fact that the length of the sum of two vectors is not necessarily equal to the sum of the lengths of the two vectors.

Two vectors are added by the program. The length of the sum is much smaller than the length of either of the original vectors. This is shown in Figure 5 where the red vector is added to the green vector producing the shorter blackvector.

Figure 5 Graphic screen output from the program named VectorAdd03.

Missing image.

Command-line output

In addition to the graphic output shown in Figure 5 , this program also produces three lines of text on the command-line screen as shown in Figure 6 .

Figure 6 . Command-line output from the program named VectorAdd03.
Red length = 111.80339887498948 Green length = 115.43396380615195Black length = 18.027756377319946

The text output on the command-line screen shows the length of each vector. As you can see in Figure 6 , the length of the black vector is much less than the length of either the red vector or the blue vector.

Not much that is new

The only thing that is new in this program is the call to the new getLength method of the GM2D04.Vector class to compute and display the length of each vector in Figure 6 .

Get Jobilize Job Search Mobile App in your pocket Now!

Get it on Google Play Download on the App Store Now




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?

Ask