Example #1
0
    def test_print(self):        
        mat = Mat([
            [1.234, 9, 39],
            [3, 165, 0.1],
        ])
        self.assertEqual(str(mat), "| 1.23    9   39 |\n|    3  165 0.10 |")
        
        mat = Mat.new_identity(4)
        self.assertEqual(str(mat), "| 1 0 0 0 |\n| 0 1 0 0 |\n| 0 0 1 0 |\n| 0\
 0 0 1 |")
        
        mat[1][1] = 348290482.23984
        self.assertEqual(str(mat), "|            1            0            0  \
          0 |\n|            0 348290482.24            0            0 |\n|     \
       0            0            1            0 |\n|            0            0\
            0            1 |")
        
        # try some fancy character renderings
        mat = Mat(
            [pi, pi/2, pi/4],            
        )
        self.assertEqual(str(mat.friendly()), "|   \xcf\x80 \xcf\x80/2 \xcf\x80/4 |")
        
        mat = Mat.new_rotation_3d(radians(45), radians(30), radians(270))
        self.assertEqual(str(mat.friendly()), "|         0  cos(\xcf\x80/6)  \
sin(\xcf\x80/6)         0 |\n| sin(-\xcf\x80/4)      0.35     -0.61         0 \
|\n| sin(-\xcf\x80/4)     -0.35      0.61         0 |\n|         0         0  \
       0         1 |")
        
        self.assertEqual(str(mat), "| -0.00  0.87  0.50  0.00 |\n| -0.71  \
0.35 -0.61  0.00 |\n| -0.71 -0.35  0.61  0.00 |\n|  0.00  0.00  0.00  1.00 |")
Example #2
0
 def test_pi_multiples(self):
     self.assertEqual(pi_multiple(radians(180), self.s, self.t), "π")
     self.assertEqual(pi_multiple(radians(360), self.s, self.t), "2π")
     self.assertEqual(pi_multiple(13*radians(180), self.s, self.t), "13π")
     self.assertEqual(pi_multiple(radians(60), self.s, self.t), "π/3")
     self.assertEqual(pi_multiple(radians(45), self.s, self.t), "π/4")
     self.assertEqual(pi_multiple(radians(30), self.s, self.t), "π/6")
     self.assertEqual(pi_multiple(radians(330), self.s, self.t), "11π/6")
     self.assertEqual(pi_multiple(radians(-360), self.s, self.t), "-2π")
     self.assertEqual(pi_multiple(radians(-60), self.s, self.t), "-π/3")
     self.assertEqual(match(radians(180), self.t), "π")
Example #3
0
 def test_trig(self):
     self.assertEqual(trig(sin(radians(-45)), self.s, self.t), "sin(-π/4)")
     self.assertEqual(trig(tan(radians(30)), self.s, self.t), "tan(π/6)")
     self.assertEqual(match(sin(radians(-45)), self.t), "sin(-π/4)")