Пример #1
0
def test_angle_degrees():
    vec1 = Vector([0, 1])
    vec2 = Vector([1, 1])
    angle = vec1.angle(vec2, in_degrees=True)
    assert angle == pytest.approx(45, abs=1e-3)
Пример #2
0
def test_angle_radians():
    vec1 = Vector([0, 1])
    vec2 = Vector([1, 1])
    angle = vec1.angle(vec2)
    assert angle == pytest.approx(0.7854, abs=1e-3)
Пример #3
0
def test_angle_div_zero():
    with pytest.raises(Exception,
                       message="Cannot compute an angle with the zero vector"):
        vec1 = Vector([0, 0])
        vec2 = Vector([1, 1])
        angle = vec1.angle(vec2)
Пример #4
0
def test_angle():
    vec1 = Vector([1, 1])
    vec2 = Vector([1, 1])
    angle = vec1.angle(vec2)
    assert angle == pytest.approx(0, abs=1e-3)
Пример #5
0
v5 = Vector([-8.987, -9.838, 5.031])
w5 = Vector([-4.268, -1.861, -8.866])
v6 = Vector([1.5, 9.547, 3.691])
w6 = Vector([-6.007, 0.124, 5.772])

answers = []
answers.append(round(x1 + y1, 3))
answers.append(round(x2 - y2, 3))
answers.append(round(x3.scalarMultiple(y3), 3))
answers.append(round(x4.magnitude(), 3))
answers.append(round(x5.magnitude(), 3))
answers.append(round(x6.normalise(), 3))
answers.append(round(x7.normalise(), 3))
answers.append(round(x8.dotProduct(y8), 3))
answers.append(round(x9.dotProduct(y9), 3))
answers.append(round(x10.angle(y10), 3))
answers.append(round((x11.angle(y11, in_degrees=True)), 3))
answers.append("Q1 Is parallel " + str(x12.isParallel(y12)) +
               " : Is orthogonal " + str(x12.isOrthogonal(y12)))
answers.append("Q2 Is parallel " + str(x13.isParallel(y13)) +
               " : Is orthogonal " + str(x13.isOrthogonal(y13)))
answers.append("Q3 Is parallel " + str(x14.isParallel(y14)) +
               " : Is orthogonal " + str(x14.isOrthogonal(y14)))
answers.append("Q4 Is parallel " + str(x15.isParallel(y15)) +
               " : Is orthogonal " + str(x15.isOrthogonal(y15)))
answers.append(round(v1.vProjected(b1), 3))
answers.append(round(v2.vOrthogonal(b2), 3))
answers.append(
    str(round(v3.vProjected(b3), 3)) + "  " +
    str(round(v3.vOrthogonal(b3), 3)))
answers.append(round(v4.crossProduct(w4), 3))