# ChainShape

Available since LÖVE 0.8.0
This shape is not supported in earlier versions.

A ChainShape consists of multiple line segments. It can be used to create the boundaries of your terrain. The shape does not have volume and can only collide with PolygonShape and CircleShape.

Unlike the PolygonShape, the ChainShape does not have a vertices limit or has to form a convex shape, but self intersections are not supported.

## Constructors

love.physics.newChainShape | Creates a new ChainShape. | 0.8.0 |

## Functions

ChainShape:getChildEdge | Returns a child of the shape as an EdgeShape. | 0.8.0 |
ChainShape:getPoint | Returns a point of the shape. | 0.8.0 |
ChainShape:getPoints | Returns all points of the shape. | 0.8.0 |
ChainShape:getVertexCount | Returns the number of vertices the shape has. | 0.8.0 |
ChainShape:setNextVertex | Sets a vertex that establishes a connection to the next shape. | 0.8.0 |
ChainShape:setPrevVertex | Sets a vertex that establishes a connection to the previous shape. | 0.8.0 | 0.9.0
ChainShape:setPreviousVertex | Sets a vertex that establishes a connection to the previous shape. | 0.9.0 |
Object:type | Gets the type of the object as a string. |  |
Object:typeOf | Checks whether an object is of a certain type. |  |
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:getData | Get the data set with setData. |  | 0.8.0
Shape:getMask | Gets which categories this shape should NOT collide with. |  | 0.8.0
Shape:getType | Gets a string representing the Shape. |  |
Shape:rayCast | Casts a ray against the shape. | 0.8.0 |
Shape:setData | Set data to be passed to the collision callback. |  | 0.8.0
Shape:setMask | Sets which categories this shape should NOT collide with. |  | 0.8.0

## Supertypes

- Shape
- Object

## See Also

- love.physics

##

Category:

- Types