コード例 #1
0
def test_check_non_zero():
    """Test the check_non_zero method."""
    plane_1 = Plane(Vector3D(0, 0, 1))
    pts_1 = (Point3D(0, 0), Point3D(2, 0), Point3D(2, 2))
    pts_2 = (Point3D(0, 0), Point3D(2, 0), Point3D(2, 0))
    shade_1 = Shade('shade1', Face3D(pts_1, plane_1))
    shade_2 = Shade('shade2', Face3D(pts_2, plane_1))

    assert shade_1.check_non_zero(0.0001, False) is True
    assert shade_2.check_non_zero(0.0001, False) is False
    with pytest.raises(Exception):
        assert shade_2.check_self_intersecting(0.0001, True)
コード例 #2
0
def test_check_self_intersecting():
    """Test the check_self_intersecting method."""
    plane_1 = Plane(Vector3D(0, 0, 1))
    plane_2 = Plane(Vector3D(0, 0, -1))
    pts_1 = (Point3D(0, 0), Point3D(2, 0), Point3D(2, 2), Point3D(0, 2))
    pts_2 = (Point3D(0, 0), Point3D(0, 2), Point3D(2, 0), Point3D(2, 2))
    shade_1 = Shade('shade1', Face3D(pts_1, plane_1))
    shade_2 = Shade('shade2', Face3D(pts_2, plane_1))
    shade_3 = Shade('shade3', Face3D(pts_1, plane_2))
    shade_4 = Shade('shade4', Face3D(pts_2, plane_2))

    assert shade_1.check_self_intersecting(False) is True
    assert shade_2.check_self_intersecting(False) is False
    with pytest.raises(Exception):
        assert shade_2.check_self_intersecting(True)
    assert shade_3.check_self_intersecting(False) is True
    assert shade_4.check_self_intersecting(False) is False
    with pytest.raises(Exception):
        assert shade_4.check_self_intersecting(True)