Public Member Functions | Public Attributes
b2ChainShape Class Reference

#include <b2ChainShape.h>

Inheritance diagram for b2ChainShape:
Inheritance graph
[legend]

List of all members.

Public Member Functions

 b2ChainShape ()
void Clear ()
 Clear all data.
b2ShapeClone (b2BlockAllocator *allocator) const
 Implement b2Shape. Vertices are cloned using b2Alloc.
void ComputeAABB (b2AABB *aabb, const b2Transform &transform, int32 childIndex) const
void ComputeMass (b2MassData *massData, float32 density) const
void CreateChain (const b2Vec2 *vertices, int32 count)
void CreateLoop (const b2Vec2 *vertices, int32 count)
int32 GetChildCount () const
void GetChildEdge (b2EdgeShape *edge, int32 index) const
 Get a child edge.
bool RayCast (b2RayCastOutput *output, const b2RayCastInput &input, const b2Transform &transform, int32 childIndex) const
 Implement b2Shape.
void SetNextVertex (const b2Vec2 &nextVertex)
void SetPrevVertex (const b2Vec2 &prevVertex)
bool TestPoint (const b2Transform &transform, const b2Vec2 &p) const
 ~b2ChainShape ()
 The destructor frees the vertices using b2Free.

Public Attributes

int32 m_count
 The vertex count.
bool m_hasNextVertex
bool m_hasPrevVertex
b2Vec2 m_nextVertex
b2Vec2 m_prevVertex
b2Vec2m_vertices
 The vertices. Owned by this class.

Detailed Description

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.

Definition at line 32 of file b2ChainShape.h.


Constructor & Destructor Documentation

Definition at line 95 of file b2ChainShape.h.

The destructor frees the vertices using b2Free.

Definition at line 24 of file b2ChainShape.cpp.


Member Function Documentation

Clear all data.

Definition at line 29 of file b2ChainShape.cpp.

b2Shape * b2ChainShape::Clone ( b2BlockAllocator allocator) const [virtual]

Implement b2Shape. Vertices are cloned using b2Alloc.

Implements b2Shape.

Definition at line 91 of file b2ChainShape.cpp.

void b2ChainShape::ComputeAABB ( b2AABB aabb,
const b2Transform transform,
int32  childIndex 
) const [virtual]
See also:
b2Shape::ComputeAABB

Implements b2Shape.

Definition at line 168 of file b2ChainShape.cpp.

void b2ChainShape::ComputeMass ( b2MassData massData,
float32  density 
) const [virtual]

Chains have zero mass.

See also:
b2Shape::ComputeMass

Implements b2Shape.

Definition at line 186 of file b2ChainShape.cpp.

void b2ChainShape::CreateChain ( const b2Vec2 vertices,
int32  count 
)

Create a chain with isolated end vertices.

Parameters:
verticesan array of vertices, these are copied
countthe vertex count

Definition at line 58 of file b2ChainShape.cpp.

void b2ChainShape::CreateLoop ( const b2Vec2 vertices,
int32  count 
)

Create a loop. This automatically adjusts connectivity.

Parameters:
verticesan array of vertices, these are copied
countthe vertex count

Definition at line 36 of file b2ChainShape.cpp.

int32 b2ChainShape::GetChildCount ( ) const [virtual]
See also:
b2Shape::GetChildCount

Implements b2Shape.

Definition at line 103 of file b2ChainShape.cpp.

void b2ChainShape::GetChildEdge ( b2EdgeShape edge,
int32  index 
) const

Get a child edge.

Definition at line 109 of file b2ChainShape.cpp.

bool b2ChainShape::RayCast ( b2RayCastOutput output,
const b2RayCastInput input,
const b2Transform transform,
int32  childIndex 
) const [virtual]

Implement b2Shape.

Implements b2Shape.

Definition at line 148 of file b2ChainShape.cpp.

void b2ChainShape::SetNextVertex ( const b2Vec2 nextVertex)

Establish connectivity to a vertex that follows the last vertex. Don't call this for loops.

Definition at line 85 of file b2ChainShape.cpp.

void b2ChainShape::SetPrevVertex ( const b2Vec2 prevVertex)

Establish connectivity to a vertex that precedes the first vertex. Don't call this for loops.

Definition at line 79 of file b2ChainShape.cpp.

bool b2ChainShape::TestPoint ( const b2Transform transform,
const b2Vec2 p 
) const [virtual]

This always return false.

See also:
b2Shape::TestPoint

Implements b2Shape.

Definition at line 141 of file b2ChainShape.cpp.


Member Data Documentation

The vertex count.

Definition at line 89 of file b2ChainShape.h.

Definition at line 92 of file b2ChainShape.h.

Definition at line 92 of file b2ChainShape.h.

Definition at line 91 of file b2ChainShape.h.

Definition at line 91 of file b2ChainShape.h.

The vertices. Owned by this class.

Definition at line 86 of file b2ChainShape.h.


The documentation for this class was generated from the following files:


mvsim
Author(s):
autogenerated on Thu Jun 6 2019 22:08:35