示例#1
0
def make_battery(world, position=(0, 0, 0)):
    mass = Mass()
    mass.setBox(battery_density, 70, 25, 35)
    body = Body(world)
    body.setMass(mass)
    body.setPosition(position)
    return body
示例#2
0
def make_servo(world, position=(0, 0, 0)):
    mass = Mass()
    mass.setBox(servo_density, 40, 20, 35)
    body = Body(world)
    body.setMass(mass)
    body.setPosition(position)
    return body
示例#3
0
def make_lower_leg(world):
    lower_leg_mass = Mass()
    lower_leg_mass.setBox(body_density, 30, 100, 5)
    lower_leg = Body(world)
    lower_leg.setMass(lower_leg_mass)
    servo = make_servo(world)
    fix(world, lower_leg, servo)
    return lower_leg
示例#4
0
 def __init__(self, world, pos, size, mass):
     self.world = world
     self.pos = pos
     # Create a body inside the world
     self.body = Body(world)
     M = Mass()
     M.setSphere(2500.0, size)
     M.mass = mass
     self.body.setMass(M)
     self.body.setPosition(pos)
     # draw body
     self.rbody = sphere(pos=pos, radius=size)
示例#5
0
def make_body(world):
    mass = Mass()
    mass.setBox(body_density, 240, 27, 150)
    body = Body(world)
    body.setMass(mass)
    fix(world, body, make_battery(world, (0, 27 / 2, -(150 / 2 - 35 / 2))))
    fix(world, body, make_battery(world, (0, 27 / 2, 150 / 2 - 35 / 2)))
    fix(world, body, make_servo(world, (240 / 2 - 30, 0, 150 / 2)))
    fix(world, body, make_servo(world, (240 / 2 - 30, 0, -150 / 2)))
    fix(world, body, make_servo(world, (-(240 / 2 - 30), 0, 150 / 2)))
    fix(world, body, make_servo(world, (-(240 / 2 - 30), 0, -150 / 2)))
    return body
示例#6
0
 def __init__(self, world, space, pos, size, mass, color=(0.7, 0.7, 0.7)):
     self.world = world
     self.pos = pos
     # Create a body inside the world
     self.body = Body(world)
     M = Mass()
     M.setSphere(2500, size)
     M.mass = mass
     self.body.setMass(M)
     self.body.setPosition(pos)
     if space:
         # setect colisions
         self.geom = GeomSphere(space, size)
         self.geom.setBody(self.body)
     # draw body
     self.rbody = sphere(pos=pos, radius=size, color=color)
示例#7
0
 def __init__(self, world, space, pos, size, mass, color=(0.7, 0.7, 0.7)):
     self.world = world
     self.pos = pos
     # Create a body inside the world
     self.body = Body(world)
     M = Mass()
     M.setSphere(2500, size)
     M.mass = mass
     self.body.setMass(M)
     self.body.setPosition(pos)
     if space:
         # setect colisions
         self.geom = GeomSphere(space, size)
         self.geom.setBody(self.body)
     # draw body
     self.rbody = sphere(pos=pos, radius=size, color=color)
示例#8
0
def make_upper_leg(world):
    upper_leg_mass = Mass()
    upper_leg_mass.setBox(body_density, 30, 100, 5)
    upper_leg = Body(world)
    upper_leg.setMass(upper_leg_mass)
    return upper_leg
示例#9
0
 def create_mass(self, density, dimensions):
     width, height, depth = dimensions
     mass = Mass()
     mass.setBox(density, width, height, depth)
     return mass