Esempio n. 1
0
def test_quaternion_to_angle_axis_to_quaternion():
    """Test quaternion_to_angle_axis and reverse for consistency."""
    n = 1000
    orientations = generate.get_random_quat(n)
    for i in range(n):
        orientation = orientations[i]
        theta, axis = convert.quaternion_to_angle_axis(orientation)
        quat = convert.angle_axis_to_quaternion(axis, theta)
        assert np.allclose(orientation, quat) \
            or np.allclose(orientation, -quat)
Esempio n. 2
0
def test_angle_axis_to_quaternion_z_name():
    """Test angle_axis_to_quaternion for 90deg rotations along z, by name."""
    # Caps should work too
    quat = convert.angle_axis_to_quaternion('Z', np.pi / 2)
    assert np.allclose(quat, cst.quatz90)
Esempio n. 3
0
def test_angle_axis_to_quaternion_y_name():
    """Test angle_axis_to_quaternion for 90deg rotations along y, by name."""
    quat = convert.angle_axis_to_quaternion('y', np.pi / 2)
    assert np.allclose(quat, cst.quaty90)
Esempio n. 4
0
def test_angle_axis_to_quaternion_z():
    """Test angle_axis_to_quaternion for 90deg rotations along z."""
    quat = convert.angle_axis_to_quaternion(cst.vecz, np.pi / 2)
    assert np.allclose(quat, cst.quatz90)
Esempio n. 5
0
def test_angle_axis_to_quaternion_z():
    """Test angle_axis_to_quaternion for 90deg rotations along z."""
    axis = np.array([0., 0., 1.])
    theta = np.pi / 2
    quat = convert.angle_axis_to_quaternion(axis, theta)
    assert np.allclose(quat, quatz90)
Esempio n. 6
0
def test_angle_axis_to_quaternion_x_name():
    """Test angle_axis_to_quaternion for 90deg rotations along x, by name."""
    theta = np.pi / 2
    quat = convert.angle_axis_to_quaternion('x', theta)
    assert np.allclose(quat, quatx90)