Beispiel #1
0
 def test_rotation_aligning_vectors(self):
     
     vec1 = (2,0,0)
     vec2 = (0,3,0)
     
     mat = transformations.rotation_aligning_vectors(vec1, vec2)
     self.assertVecsEqual( numpy.dot(mat, vec1), (0,2,0) )
     
     mat0 = transformations.rotation_aligning_vectors(vec1, vec1)
     self.assertTrue( Affine(linear=mat0).is_identity() )
Beispiel #2
0
 def tracer_coordinate_system(self):
     rotation = Affine(linear=rotation_aligning_vectors((0,0,1), self.axis))
     scaling = Affine(scaling=(self.R, self.R, self.height))
     return rotation(scaling)
Beispiel #3
0
 def tracer_coordinate_system(self):
     return Affine(
         linear = rotation_aligning_vectors((1,0,0), self.normal),
         translation = -numpy.ravel(self.normal)*self.h )