Beispiel #1
0
def test_Angle_libre():
    x = random()
    a = Angle_libre(x)
    assertAlmostEqual(a.deg, x*180/math.pi)
    assertAlmostEqual(a.grad, x*200/math.pi)
    assertAlmostEqual(a.rad, x)
    assertAlmostEqual(a.val, x)
    assertAlmostEqual(math.sin(a.val), math.sin(x))
    assertAlmostEqual(math.cos(a.val), math.cos(x))
    assertAlmostEqual(math.tan(a.val), math.tan(x))
    y = x*180/math.pi
    a = Angle_libre(y, u"°")
    assertAlmostEqual(a.deg, y)
    assertAlmostEqual(a.grad, x*200/math.pi)
    assertAlmostEqual(a.rad, x)
    assertNotAlmostEqual(a.val, a.deg)
    assertAlmostEqual(u_sin(a), math.sin(x))
    assertAlmostEqual(u_cos(a), math.cos(x))
    assertAlmostEqual(u_tan(a), math.tan(x))
    a.unite = "g"
    assertNotAlmostEqual(a.val, a.grad)
    b = Angle_libre(u"45°")
    assertAlmostEqual(b.rad, math.pi/4)
    f = Feuille()
    f.objets.A = Point(40, 20)
    f.objets.k = Variable("A.x+5")
    f.objets.c = Angle_libre(f.objets.k, "d")
    f.objets.d = Angle_libre("A.x+5", "d")
    assert(f.objets.c.rad is not None)
    assertAlmostEqual(b.rad, f.objets.c.rad)
    assertAlmostEqual(f.objets.d.rad, f.objets.c.rad)
Beispiel #2
0
def test_contexte_degre():
    with contexte(unite_angle='d'):
        a = Angle_libre('pi rad')
        assertAlmostEqual(a.deg, 180)
        a = Angle_libre('100 grad')
        assertAlmostEqual(a.deg, 90)
        b = Angle_libre(30)
        assertAlmostEqual(b.rad, math.pi / 6)
        # En interne, tout doit être stocké en radians
        assert float(b.val) == float(b.rad)
        # On doit avoir eval(repr(b)) == b
        assertAlmostEqual(eval(repr(b)).deg, 30)
Beispiel #3
0
def test_Angle_libre():
    x = random()
    a = Angle_libre(x)
    assertAlmostEqual(a.deg, x * 180 / math.pi)
    assertAlmostEqual(a.grad, x * 200 / math.pi)
    assertAlmostEqual(a.rad, x)
    assertAlmostEqual(a.val, x)
    assertAlmostEqual(math.sin(a.val), math.sin(x))
    assertAlmostEqual(math.cos(a.val), math.cos(x))
    assertAlmostEqual(math.tan(a.val), math.tan(x))
    y = x * 180 / math.pi
    a = Angle_libre(y, u"°")
    assertAlmostEqual(a.deg, y)
    assertAlmostEqual(a.grad, x * 200 / math.pi)
    assertAlmostEqual(a.rad, x)
    assertNotAlmostEqual(a.val, a.deg)
    assertAlmostEqual(u_sin(a), math.sin(x))
    assertAlmostEqual(u_cos(a), math.cos(x))
    assertAlmostEqual(u_tan(a), math.tan(x))
    a.unite = "g"
    assertNotAlmostEqual(a.val, a.grad)
    b = Angle_libre(u"45°")
    assertAlmostEqual(b.rad, math.pi / 4)
    f = Feuille()
    f.objets.A = Point(40, 20)
    f.objets.k = Variable("A.x+5")
    f.objets.c = Angle_libre(f.objets.k, "d")
    f.objets.d = Angle_libre("A.x+5", "d")
    assert (f.objets.c.rad is not None)
    assertAlmostEqual(b.rad, f.objets.c.rad)
    assertAlmostEqual(f.objets.d.rad, f.objets.c.rad)
Beispiel #4
0
def test_info():
    a = Angle_libre(u"30°")
    assert str(a.deg) == '30'
    with contexte(unite_angle='d'):
        assert a.info == u'Angle de valeur 30°'
    with contexte(unite_angle='r'):
        assert a.info == u'Angle de valeur pi/6 rad'
    with contexte(unite_angle='g'):
        assert a.info == u'Angle de valeur 100/3 grad'
Beispiel #5
0
def test_Angle_libre():
    x = random()
    a = Angle_libre(x)
    assertAlmostEqual(a.deg, x*180/math.pi)
    assertAlmostEqual(a.grad, x*200/math.pi)
    assertAlmostEqual(a.rad, x)
    assertAlmostEqual(a.val, x)
    assertAlmostEqual(math.sin(a.val), math.sin(x))
    assertAlmostEqual(math.cos(a.val), math.cos(x))
    assertAlmostEqual(math.tan(a.val), math.tan(x))
    y = x*180/math.pi
    a = Angle_libre(y, u"°")
    assertAlmostEqual(a.deg, y)
    assertAlmostEqual(a.grad, x*200/math.pi)
    assertAlmostEqual(a.rad, x)
    assertNotAlmostEqual(a.val, a.deg)
    assertAlmostEqual(u_sin(a), math.sin(x))
    assertAlmostEqual(u_cos(a), math.cos(x))
    assertAlmostEqual(u_tan(a), math.tan(x))
    a.unite = "g"
    assertNotAlmostEqual(a.val, a.grad)
    b = Angle_libre(u"45°")
    assertAlmostEqual(b.rad, math.pi/4)
##        print "%% FEUILLE %%"
##        f = geolib.Feuille()
##        print f, type(f)
##        p = Point(40, 20)
##        print p,  type(p), id(p)
##        f.objets.A = p
##        print f.objets.A, type(f.objets.A), id(f.objets.A)
##        v = Variable("A.x+5")
##        print v, type(v)
##        f.objets.k = v
##        f.objets.c = Angle_libre(f.objets.k, "d")
##        assertAlmostEqual(b.rad, c.rad)
    f = Feuille()
    f.objets.A = Point(40, 20)
    f.objets.k = Variable("A.x+5")
    f.objets.c = Angle_libre(f.objets.k, "d")
    f.objets.d = Angle_libre("A.x+5", "d")
    assert(f.objets.c.rad is not None)
    assertAlmostEqual(b.rad, f.objets.c.rad)
    assertAlmostEqual(f.objets.d.rad, f.objets.c.rad)