Esempio n. 1
0
 def test_vertical(self):
     """
     ^ vec
     |         normal
     |  --------->
     """
     V = Vector2D(0, 0.2)
     N = V.normal
     self.assertAlmostEqual(N.x, 1)
     self.assertAlmostEqual(N.y, 0)
Esempio n. 2
0
 def test_horizontal_negative(self):
     """
     ^ normal
     |          vec
     |  <----------
     """
     V = Vector2D(-0.2, 0)
     N = V.normal
     self.assertAlmostEqual(N.x, 0)
     self.assertAlmostEqual(N.y, 1)
Esempio n. 3
0
 def test_vertical_negative(self):
     """
     normal
     <---------  |
                 | vec
                 v
     """
     V = Vector2D(0, -0.2)
     N = V.normal
     self.assertAlmostEqual(N.x, -1)
     self.assertAlmostEqual(N.y, 0)
Esempio n. 4
0
 def test_horizontal(self):
     """
     vec
     ---------->  |
                  | normal
                  v
     """
     V = Vector2D(3, 0)
     N = V.normal
     self.assertAlmostEqual(N.x, 0)
     self.assertAlmostEqual(N.y, -1)
Esempio n. 5
0
 def test_oblique(self):
     """
                _
                /| vec
             /
         / \
     /      \
            _\| normal
     """
     V = Vector2D(3, 4)
     N = V.normal
     self.assertAlmostEqual(N.x, 0.8)
     self.assertAlmostEqual(N.y, -0.6)
Esempio n. 6
0
 def test_dot_product(self):
     A = Vector2D(1, -2)
     B = Vector2D(3, 4)
     x = A.dot(B)
     self.assertEqual(x, -5)
Esempio n. 7
0
 def test_normalize(self):
     A = Vector2D(3, 4)
     A.normalize()
     self.assertAlmostEqual(A.x, 0.6)
     self.assertAlmostEqual(A.y, 0.8)
     self.assertAlmostEqual(A.norm, 1.)
Esempio n. 8
0
 def test_cross_product(self):
     A = Vector2D(1, -2)
     B = Vector2D(3, 4)
     x = A ^ B
     self.assertEqual(x, 10)
Esempio n. 9
0
    def test_mult_scalar(self):
        u = Vector2D(1, -2)

        w = u * 3
        self.assertEqual(w.x, 3)
        self.assertEqual(w.y, -6)
Esempio n. 10
0
 def test_add_vector(self):
     A = Vector2D(1, 2)
     B = Vector2D(4, 6)
     V = A + B
     self.assertEqual(V.x, 5)
     self.assertEqual(V.y, 8)
Esempio n. 11
0
 def test_subtract_vector(self):
     A = Vector2D(1, 2)
     B = Vector2D(4, 6)
     V = B - A
     self.assertEqual(V.x, 3)
     self.assertEqual(V.y, 4)
Esempio n. 12
0
    def test_norm(self):
        A = Vector2D(1, 0)
        self.assertEqual(A.norm, 1.)

        A = Vector2D(1, 2)
        self.assertAlmostEqual(A.norm, sqrt(5.))
Esempio n. 13
0
 def test_add_vector(self):
     A = Point2D(1, 2)
     v = Vector2D(3, 1)
     B = A + v
     self.assertEqual(B.x, 4)
     self.assertEqual(B.y, 3)