Shape

Shapes are solid 2d geometrical objects which handle the mass and collision of a Body in love.physics.

Shapes are attached to a Body via a Fixture. The Shape object is copied when this happens.

The Shape's position is relative to the position of the Body it has been attached to.

Constructors

love.physics.newChainShape Creates a new ChainShape. 0.8.0
love.physics.newCircleShape Creates a new CircleShape.
love.physics.newEdgeShape Creates a new EdgeShape. 0.8.0
love.physics.newPolygonShape Creates a new PolygonShape.
love.physics.newRectangleShape Shorthand for creating rectangular PolygonShapes.

Functions

Object:type Gets the type of the object as a string.
Object:typeOf Checks whether an object is of a certain type.
Shape:computeAABB Returns the points of the bounding box for the transformed shape. 0.8.0
Shape:computeMass Computes the mass properties for the shape. 0.8.0
Shape:destroy Explicitly destroys the Shape. 0.8.0
Shape:getBody Get the body the shape is attached to. 0.7.0 0.8.0
Shape:getBoundingBox Gets the bounding box of the shape. 0.8.0
Shape:getCategory Gets the categories this shape is a member of. 0.8.0
Shape:getCategoryBits Gets the categories as a 16-bit integer. 0.8.0
Shape:getChildCount Returns the number of children the shape has. 0.8.0
Shape:getData Get the data set with setData. 0.8.0
Shape:getDensity Gets the density of the Shape. 0.8.0
Shape:getFilterData Gets the filter data of the Shape. 0.8.0
Shape:getFriction Gets the friction of this shape. 0.8.0
Shape:getMask Gets which categories this shape should NOT collide with. 0.8.0
Shape:getRadius Gets the radius of the shape.
Shape:getRestitution Gets the restitution of this shape. 0.8.0
Shape:getType Gets a string representing the Shape.
Shape:isSensor Checks whether a Shape is a sensor or not. 0.8.0
Shape:rayCast Casts a ray against the shape. 0.8.0
Shape:setCategory Sets the categories this shape is a member of. 0.8.0
Shape:setData Set data to be passed to the collision callback. 0.8.0
Shape:setDensity Sets the density of a Shape. 0.8.0
Shape:setFilterData Sets the filter data for a Shape. 0.8.0
Shape:setFriction Sets the friction of the shape. 0.8.0
Shape:setMask Sets which categories this shape should NOT collide with. 0.8.0
Shape:setRestitution Sets the restitution of the shape. 0.8.0
Shape:setSensor Sets whether this shape should act as a sensor. 0.8.0
Shape:testPoint Checks whether a point lies inside the shape.
Shape:testSegment Checks whether a line segment intersects a shape. 0.8.0

Enums

ShapeType The different types of Shapes, as returned by Shape:getType.

Supertypes

Subtypes

ChainShape A ChainShape consists of multiple line segments.
CircleShape Circle extends Shape and adds a radius and a local position.
EdgeShape EdgeShape is a line segment.
PolygonShape Polygon is a convex polygon with up to 8 sides.

See Also


Shape:destroy
  • References/Game Development/LÖVE/love.physics/Shape

Shape:destroy Removed in LÖVE 0.8.0 This function is not supported in that and later versions. Explicitly destroys the Shape. When you don't have

2025-01-10 15:47:30
Shape:getCategoryBits
  • References/Game Development/LÖVE/love.physics/Shape

Shape:getCategoryBits Removed in LÖVE 0.8.0 Use

2025-01-10 15:47:30
Shape:computeAABB
  • References/Game Development/LÖVE/love.physics/Shape

Shape:computeAABB Available since LÖVE 0.8.0 This function is not supported in earlier versions. Returns the points of the bounding box for

2025-01-10 15:47:30
ChainShape:getNextVertex
  • References/Game Development/LÖVE/love.physics/Shape/ChainShape

ChainShape:getNextVertex Available since LÖVE 0.10.2 This function is not supported in earlier versions. Gets the vertex that establishes a

2025-01-10 15:47:30
CircleShape:getWorldCenter
  • References/Game Development/LÖVE/love.physics/Shape/CircleShape

CircleShape:getWorldCenter Removed in LÖVE 0.8.0 This method is not supported in that and later versions. Get the center of the circle in world

2025-01-10 15:47:30
EdgeShape:setNextVertex
  • References/Game Development/LÖVE/love.physics/Shape/EdgeShape

EdgeShape:setNextVertex Available since LÖVE 0.10.2 This function is not supported in earlier versions. Sets a vertex that establishes a connection

2025-01-10 15:47:30
Shape:getBoundingBox
  • References/Game Development/LÖVE/love.physics/Shape

Shape:getBoundingBox Removed in LÖVE 0.8.0 This function is not supported in that and later versions. Gets the bounding box of the shape. This

2025-01-10 15:47:30
ChainShape:getChildEdge
  • References/Game Development/LÖVE/love.physics/Shape/ChainShape

ChainShape:getChildEdge Available since LÖVE 0.8.0 This function is not supported in earlier versions. Returns a child of the shape as an EdgeShape

2025-01-10 15:47:30
Shape:testPoint
  • References/Game Development/LÖVE/love.physics/Shape

Shape:testPoint This is particularly useful for mouse interaction with the shapes. By looping through all shapes and testing the mouse position with this function, we can find which shapes

2025-01-10 15:47:30
Shape:getRadius
  • References/Game Development/LÖVE/love.physics/Shape

Shape:getRadius Gets the radius of the shape. Function Synopsis radius

2025-01-10 15:47:30