Esempio n. 1
0
class TestBezier2:
    bezier_default = geo.Bezier2(next_point=geo.Point2(3, 2),
                                 handle1=geo.Vector2(1, 0),
                                 handle2=geo.Vector2(0, 1))
    bezier_other = geo.Bezier2(next_point=geo.Point2(2, 3),
                               handle1=geo.Vector2(0, 1),
                               handle2=geo.Vector2(1, 0))

    def test_constructor(self):
        assert self.bezier_default.next_point == geo.Point2(3, 2)
        assert self.bezier_default.handle1 == geo.Vector2(1, 0)
        assert self.bezier_default.handle2 == geo.Vector2(0, 1)

    def test_copy(self):
        bezier = copy(self.bezier_default)
        assert bezier == self.bezier_default
        assert bezier is not self.bezier_default

    def test_repr(self):
        assert (str(self.bezier_default) == 'Bezier2(handle1=<1.00, 0.00>, '
                'handle2=<0.00, 1.00>, '
                'next_point=<3.00, 2.00>)')

    def test_ne(self):
        assert self.bezier_default != self.bezier_other
Esempio n. 2
0
class TestArc2:
    arc_default = geo.Arc2(center=geo.Point2(3, 2),
                           radius=2,
                           start=0,
                           end=math.pi)
    arc_other = geo.Arc2(center=geo.Point2(-1, 3),
                         radius=1,
                         start=2 / math.pi,
                         end=math.pi)

    def test_constructor(self):
        assert self.arc_default.center == geo.Point2(3, 2)
        assert self.arc_default.radius == 2
        assert self.arc_default.start == 0
        assert self.arc_default.end == math.pi

    def test_copy(self):
        arc = copy(self.arc_default)
        assert arc == self.arc_default
        assert arc is not self.arc_default

    def test_repr(self):
        assert (str(self.arc_default) ==
                'Arc2(<3.00, 2.00>, radius=2.00, start=0.00, end=3.14)')

    def test_ne(self):
        assert self.arc_default != self.arc_other
Esempio n. 3
0
class TestLineSegment2:
    line_default = geo.LineSegment2(geo.Point2(1, 1), geo.Point2(3, 1))

    def test_magnitude_squared(self):
        assert self.line_default.magnitude_squared() == 4

    def test_repr(self):
        assert (str(
            self.line_default) == 'LineSegment2(<1.00, 1.00> to <3.00, 1.00>)')

    def test_abs(self):
        assert abs(self.line_default) == 2

    def test_length(self):
        assert self.line_default.length == 2
Esempio n. 4
0
class TestCircle:
    circle_default = geo.Circle(geo.Point2(3, 2), 2)
    circle_other = geo.Circle(geo.Point2(-1, 3), 1)

    def test_constructor(self):
        assert self.circle_default.center == geo.Point2(3, 2)
        assert self.circle_default.radius == 2

    def test_copy(self):
        circle = copy(self.circle_default)
        assert circle == self.circle_default
        assert circle is not self.circle_default

    def test_repr(self):
        assert str(self.circle_default) == 'Circle(<3.00, 2.00>, radius=2.00)'

    def test_ne(self):
        assert self.circle_default != self.circle_other
Esempio n. 5
0
class TestLine2:
    line_default = geo.Line2(geo.Point2(1, 1), geo.Point2(3, 1))
    line_other = geo.Line2(geo.Point2(2, 1), geo.Point2(2, 3))

    def test_constructor(self):
        assert self.line_default.position == geo.Point2(1, 1)
        assert self.line_default.vector == geo.Vector2(2, 0)
        assert self.line_default.p1 == geo.Point2(1, 1)
        assert self.line_default.p2 == geo.Point2(3, 1)

    def test_copy(self):
        line_copy = self.line_default.copy()
        assert line_copy == self.line_default
        assert line_copy is not self.line_default

    def test_repr(self):
        assert str(self.line_default) == 'Line2(<1.00, 1.00> + u<2.00, 0.00>)'

    def test_ne(self):
        assert self.line_default != self.line_other
Esempio n. 6
0
def test_lerp_vector2_as_point2():
    first = geo.Point2(0, 0)
    second = geo.Point2(1, 4)
    expected = geo.Point2(0.25, 1)
    actual = util.lerp_vector2(first, second, 0.25)
    assert actual == expected
Esempio n. 7
0
 def test_constructor(self):
     assert self.bezier_default.next_point == geo.Point2(3, 2)
     assert self.bezier_default.handle1 == geo.Vector2(1, 0)
     assert self.bezier_default.handle2 == geo.Vector2(0, 1)
Esempio n. 8
0
 def test_constructor(self):
     assert self.arc_default.center == geo.Point2(3, 2)
     assert self.arc_default.radius == 2
     assert self.arc_default.start == 0
     assert self.arc_default.end == math.pi
Esempio n. 9
0
 def test_constructor(self):
     assert self.line_default.position == geo.Point2(1, 1)
     assert self.line_default.vector == geo.Vector2(2, 0)
     assert self.line_default.p1 == geo.Point2(1, 1)
     assert self.line_default.p2 == geo.Point2(3, 1)
Esempio n. 10
0
class TestRay2:
    line_default = geo.Ray2(geo.Point2(1, 1), geo.Point2(3, 1))

    def test_repr(self):
        assert str(self.line_default) == 'Ray2(<1.00, 1.00> + u<2.00, 0.00>)'
Esempio n. 11
0
 def test_constructor(self):
     assert self.circle_default.center == geo.Point2(3, 2)
     assert self.circle_default.radius == 2