def __init__(self, node, mass=100): a = (0,0) b = util.transformVector((node.pos2.x - node.pos1.x,node.pos2.y - node.pos1.y)) inertia = pymunk.moment_for_segment(mass, a,b) BaseBody.__init__(self, node, mass, inertia) self.shape = pymunk.Segment(self, a, b, node.strokewidth) self.shape.elasticity=1 self.shape.friction = 0 self.shape.collision_type = ShieldCollisionType
def update(self, pos1, pos2): self.pos1 = pos1 self.pos2 = pos2 self._body.position = tuple(self.pos1) self._body.shape.b = util.transformVector((pos2.x - pos1.x, pos2.y - pos1.y))