Exemplo n.º 1
0
from intro import pymunk, space, App

b0 = space.static_body

for i in range(5):
    body = pymunk.Body(mass=1, moment=10)
    body.position = (200 + i * 40, 50)
    if i == 0:
        body.position = 50, 200
    shape = pymunk.Circle(body, radius=20)
    shape.elasticity = 0.999
    joint = pymunk.constraint.PinJoint(b0, body, (200 + i * 40, 200))
    space.add(body, shape, joint)

App().run()
Exemplo n.º 2
0
from intro import pymunk, space, App
from random import randint

pts = [(10, 10), (690, 10), (690, 230), (10, 230)]
for i in range(4):
    seg = pymunk.Segment(space.static_body, pts[i], pts[(i + 1) % 4], 2)
    seg.elasticity = 0.999
    space.add(seg)

space.gravity = 0, 0
for i in range(40):
    body = pymunk.Body(mass=1, moment=10)
    body.position = randint(40, 660), randint(40, 200)
    impulse = randint(-100, 100), randint(-100, 100)
    body.apply_impulse_at_local_point(impulse)
    circle = pymunk.Circle(body, radius=10)
    circle.elasticity = 0.999
    circle.friction = 0.5
    space.add(body, circle)

App().run()
Exemplo n.º 3
0
from intro import pymunk, space, App

b0 = space.static_body

b1 = pymunk.Body(mass=1, moment=10)
b1.position = (100, 200)
c1 = pymunk.Circle(b1, radius=20)
c1.elasticity = 0.999
space.add(b1, c1)

b2 = pymunk.Body(mass=1, moment=10)
b2.position = (240, 100)
c2 = pymunk.Circle(b2, radius=20)
c2.elasticity = 0.999
space.add(b2, c2)

j1 = pymunk.constraint.PinJoint(b0, b1, (200, 200))
j2 = pymunk.constraint.PinJoint(b0, b2, (240, 200))
space.add(j1, j2)

App().run()