Torque2D Reference
|
#include <b2ChainShape.h>
Public Member Functions | |
b2ChainShape () | |
~b2ChainShape () | |
The destructor frees the vertices using b2Free. More... | |
void | CreateLoop (const b2Vec2 *vertices, int32 count) |
void | CreateChain (const b2Vec2 *vertices, int32 count) |
void | SetPrevVertex (const b2Vec2 &prevVertex) |
void | SetNextVertex (const b2Vec2 &nextVertex) |
b2Shape * | Clone (b2BlockAllocator *allocator) const |
Implement b2Shape. Vertices are cloned using b2Alloc. More... | |
int32 | GetChildCount () const |
void | GetChildEdge (b2EdgeShape *edge, int32 index) const |
Get a child edge. More... | |
bool | TestPoint (const b2Transform &transform, const b2Vec2 &p) const |
bool | RayCast (b2RayCastOutput *output, const b2RayCastInput &input, const b2Transform &transform, int32 childIndex) const |
Implement b2Shape. More... | |
void | ComputeAABB (b2AABB *aabb, const b2Transform &transform, int32 childIndex) const |
void | ComputeMass (b2MassData *massData, float32 density) const |
![]() | |
virtual | ~b2Shape () |
Type | GetType () const |
Public Attributes | |
b2Vec2 * | m_vertices |
The vertices. Owned by this class. More... | |
int32 | m_count |
The vertex count. More... | |
b2Vec2 | m_prevVertex |
b2Vec2 | m_nextVertex |
bool | m_hasPrevVertex |
bool | m_hasNextVertex |
![]() | |
Type | m_type |
float32 | m_radius |
Additional Inherited Members | |
![]() | |
enum | Type { e_circle = 0, e_edge = 1, e_polygon = 2, e_chain = 3, e_typeCount = 4 } |
A chain shape is a free form sequence of line segments. The chain has two-sided collision, so you can use inside and outside collision. Therefore, you may use any winding order. Since there may be many vertices, they are allocated using b2Alloc. Connectivity information is used to create smooth collisions. WARNING: The chain will not collide properly if there are self-intersections.
|
inline |
~b2ChainShape | ( | ) |
The destructor frees the vertices using b2Free.
|
virtual |
|
virtual |
Implements b2Shape.
|
virtual |
void CreateChain | ( | const b2Vec2 * | vertices, |
int32 | count | ||
) |
Create a chain with isolated end vertices.
vertices | an array of vertices, these are copied |
count | the vertex count |
void CreateLoop | ( | const b2Vec2 * | vertices, |
int32 | count | ||
) |
Create a loop. This automatically adjusts connectivity.
vertices | an array of vertices, these are copied |
count | the vertex count |
|
virtual |
Implements b2Shape.
void GetChildEdge | ( | b2EdgeShape * | edge, |
int32 | index | ||
) | const |
Get a child edge.
|
virtual |
void SetNextVertex | ( | const b2Vec2 & | nextVertex | ) |
Establish connectivity to a vertex that follows the last vertex. Don't call this for loops.
void SetPrevVertex | ( | const b2Vec2 & | prevVertex | ) |
Establish connectivity to a vertex that precedes the first vertex. Don't call this for loops.
|
virtual |
int32 m_count |
The vertex count.
bool m_hasNextVertex |
bool m_hasPrevVertex |
b2Vec2 m_nextVertex |
b2Vec2 m_prevVertex |
b2Vec2* m_vertices |
The vertices. Owned by this class.