def test_construction():
    rectangle1 = RectangleShape(Vector2f(2, 3))

    assert rectangle1.size.x == 2
    assert rectangle1.size.y == 3
    assert rectangle1.point_count == 4

    rectangle1.size = Vector2f(5, 6)
    assert rectangle1.size.x == 5
    assert rectangle1.size.y == 6
示例#2
0
def test_repr():
    vec = Vector2f()

    assert str(vec) == '<pysfml11.Vector2f x=0 y=0>'

    vec1 = Vector2f(2, 4)

    assert str(vec1) == '<pysfml11.Vector2f x=2 y=4>'

    vec3 = Vector2i(3, 4)

    assert str(vec3) == '<pysfml11.Vector2i x=3 y=4>'

    vec4 = Vector2u(3, 4)

    assert str(vec4) == '<pysfml11.Vector2u x=3 y=4>'
示例#3
0
def test_get_point():
    shape = ConvexShape(3)

    assert isinstance(shape.get_point(2), Vector2f)

    shape.set_point(2, Vector2f(34, 6))
    assert shape.get_point(2).x == 34
    assert shape.get_point(2).y == 6
示例#4
0
def test_origin():
    shape = ConvexShape(3)

    assert isinstance(shape.origin, Vector2f)
    assert shape.origin.x == 0
    assert shape.origin.y == 0

    shape.origin = Vector2f(2, 3)
    assert shape.origin.x == 2
    assert shape.origin.y == 3
示例#5
0
def test_position():
    shape = ConvexShape(3)

    assert isinstance(shape.position, Vector2f)
    assert shape.position.x == 0
    assert shape.position.y == 0

    shape.position = Vector2f(2, 3)
    assert shape.position.x == 2
    assert shape.position.y == 3
示例#6
0
def test_scale():
    shape = ConvexShape(3)

    assert isinstance(shape.scale, Vector2f)
    assert shape.scale.x == 1
    assert shape.scale.y == 1

    shape.scale = Vector2f(2, 3)
    assert shape.scale.x == 2
    assert shape.scale.y == 3
示例#7
0
def test_operators():
    vec1 = Vector2f(3, 4)
    vec2 = Vector2f(5, 6)

    assert (- vec1).x == -3
    assert (- vec1).y == -4

    vec3 = Vector2f()
    vec3 += vec1
    assert vec3.x == 3
    assert vec3.y == 4

    vec3 -= vec1
    assert vec3.x == 0
    assert vec3.y == 0

    vec3 = vec1 + vec2
    assert vec3.x == 8
    assert vec3.y == 10

    vec3 = vec2 - vec1
    assert vec3.x == 2
    assert vec3.y == 2

    vec3 = vec1 * 2
    assert vec3.x == 6
    assert vec3.y == 8

    vec3 = 2 * vec2
    assert vec3.x == 10
    assert vec3.y == 12

    vec3 = vec2 / 2.
    assert vec3.x == 2.5
    assert vec3.y == 3

    vec3 /= 2
    assert vec3.x == 1.25
    assert vec3.y == 1.5

    assert not vec1 == vec2
    assert vec1 != vec2
示例#8
0
def test_move():
    shape = ConvexShape(3)

    assert shape.position.x == 0
    assert shape.position.y == 0

    shape.move(2, 3)
    assert shape.position.x == 2
    assert shape.position.y == 3

    shape.move(Vector2f(-2, -3))
    assert shape.position.x == 0
    assert shape.position.y == 0
示例#9
0
def test_construction():
    vec = Vector2f()

    assert vec.x == 0
    assert vec.y == 0

    vec1 = Vector2f(2, 4)

    assert vec1.x == 2
    assert vec1.y == 4

    vec2 = Vector2f(vec1)

    assert vec2.x == 2
    assert vec2.y == 4

    vec3 = Vector2i(3, 4)

    assert vec3.x == 3
    assert vec3.y == 4

    vec4 = Vector2u(3, 4)

    assert vec4.x == 3
    assert vec4.y == 4

    with pytest.raises(TypeError):
        Vector2i(3.4, 4)

    with pytest.raises(TypeError):
        Vector2u(-3, 4)

    vec5 = Vector2b(True, False)

    assert vec5.x
    assert not vec5.y
示例#10
0
def test_vertexarray():
    lines = VertexArray(PrimitiveType.LineStrip, 4)

    assert lines.vertex_count == 4
    assert lines.primitive_type == PrimitiveType.LineStrip

    lines.resize(6)
    assert lines.vertex_count == 6

    lines.clear()
    assert lines.vertex_count == 0

    triangles = VertexArray(PrimitiveType.TriangleStrip, 10)

    assert triangles.vertex_count == 10
    assert triangles.primitive_type == PrimitiveType.TriangleStrip

    triangles.append(Vertex(position=Vector2f(4, 5)))

    assert triangles.vertex_count == 11

    vertex = triangles[10]

    assert vertex.position == Vector2f(4, 5)
示例#11
0
def test_style():
    rectangle = RectangleShape(Vector2f(2, 3))

    assert isinstance(rectangle.fill_color, Color)

    rectangle.fill_color = Color.Yellow
    assert rectangle.fill_color == Color.Yellow

    assert isinstance(rectangle.outline_color, Color)

    rectangle.outline_color = Color.Magenta
    assert rectangle.outline_color == Color.Magenta

    assert rectangle.outline_thickness == 0

    rectangle.outline_thickness = 3
    assert rectangle.outline_thickness == 3

    assert isinstance(rectangle.local_bounds, FloatRect)
    assert isinstance(rectangle.global_bounds, FloatRect)
示例#12
0
"""Simple example of a rotating Rectangle."""
from pysfml11 import (Vector2f, Clock, VideoMode, Event, Color, RenderWindow,
                      RectangleShape)

width = 800
height = 600

mode = VideoMode(width, height)

window = RenderWindow(mode, 'My awesome SFML application!')

clock = Clock()

rectangle = RectangleShape(Vector2f(200, 300))
rectangle.fill_color = Color.Blue
rectangle.position = Vector2f(width / 2., height / 2.)

while (window.is_open()):
    event = Event()

    while window.poll_event(event):
        if event.type == Event.Closed:
            window.close()

    window.clear(Color.White)

    elapsed = clock.elapsed_time.as_seconds() * 40
    rectangle.rotation = elapsed

    window.draw(rectangle)
示例#13
0
def test_get_point():
    rectangle = RectangleShape(Vector2f(2, 3))

    assert isinstance(rectangle.get_point(2), Vector2f)