def test_normalization(self): """Test Vector normalization.""" v1 = Vector([2, 0, 0]) self.assertTrue( numpy.array_equal(v1.normalized().get_array(), numpy.array([1, 0, 0])) ) # State of v1 should not be affected by `normalized` self.assertTrue(numpy.array_equal(v1.get_array(), numpy.array([2, 0, 0]))) v1.normalize() # State of v1 should be affected by `normalize` self.assertTrue(numpy.array_equal(v1.get_array(), numpy.array([1, 0, 0])))
def test_Vector_angles(self): """Test Vector angles.""" angle = random() * numpy.pi axis = Vector(random(3) - random(3)) axis.normalize() m = rotaxis(angle, axis) cangle, caxis = m2rotaxis(m) self.assertAlmostEqual(angle, cangle, places=3) self.assertTrue( numpy.allclose(list(map(int, (axis - caxis).get_array())), [0, 0, 0]), "Want %r and %r to be almost equal" % (axis.get_array(), caxis.get_array()))