gale.physics.shapes module
This file contains the implementation of the classes CircleShape, BoxShape, and PolygonShape: plain descriptors for a Body’s fixtures. None of them ever touch Box2D directly — Body translates them into Box2D fixtures, in pixel units converted to meters internally.
Author: Alejandro Mujica (aledrums@gmail.com)
- class gale.physics.shapes.CircleShape(radius, density=1.0, friction=0.3, restitution=0.0, is_sensor=False, offset=(0, 0))[source]
Bases:
objectA circular fixture.
Usage example:
body.add_circle(CircleShape(radius=8, friction=0.4, restitution=0.6))
- Parameters:
radius (float)
density (float)
friction (float)
restitution (float)
is_sensor (bool)
offset (Tuple[float, float])
- class gale.physics.shapes.BoxShape(width, height, density=1.0, friction=0.3, restitution=0.0, is_sensor=False, offset=(0, 0))[source]
Bases:
objectA rectangular fixture.
Usage example:
body.add_box(BoxShape(width=32, height=32))
- Parameters:
width (float)
height (float)
density (float)
friction (float)
restitution (float)
is_sensor (bool)
offset (Tuple[float, float])
- class gale.physics.shapes.PolygonShape(points, density=1.0, friction=0.3, restitution=0.0, is_sensor=False)[source]
Bases:
objectAn arbitrary convex polygon fixture (at most 8 vertices, Box2D’s own limit).
Usage example:
body.add_polygon(PolygonShape([(0, -10), (10, 10), (-10, 10)]))
- Parameters:
points (List[Tuple[float, float]])
density (float)
friction (float)
restitution (float)
is_sensor (bool)