Public Member Functions | Public Attributes
b2PolygonShape Class Reference

#include <b2PolygonShape.h>

Inheritance diagram for b2PolygonShape:
Inheritance graph
[legend]

List of all members.

Public Member Functions

 b2PolygonShape ()
b2ShapeClone (b2BlockAllocator *allocator) const
 Implement b2Shape.
void ComputeAABB (b2AABB *aabb, const b2Transform &transform, int32 childIndex) const
void ComputeMass (b2MassData *massData, float32 density) const
int32 GetChildCount () const
const b2Vec2GetVertex (int32 index) const
 Get a vertex by index.
int32 GetVertexCount () const
 Get the vertex count.
bool RayCast (b2RayCastOutput *output, const b2RayCastInput &input, const b2Transform &transform, int32 childIndex) const
 Implement b2Shape.
void Set (const b2Vec2 *points, int32 count)
void SetAsBox (float32 hx, float32 hy)
void SetAsBox (float32 hx, float32 hy, const b2Vec2 &center, float32 angle)
bool TestPoint (const b2Transform &transform, const b2Vec2 &p) const
bool Validate () const

Public Attributes

b2Vec2 m_centroid
int32 m_count
b2Vec2 m_normals [b2_maxPolygonVertices]
b2Vec2 m_vertices [b2_maxPolygonVertices]

Detailed Description

A convex polygon. It is assumed that the interior of the polygon is to the left of each edge. Polygons have a maximum number of vertices equal to b2_maxPolygonVertices. In most cases you should not need many vertices for a convex polygon.

Definition at line 28 of file b2PolygonShape.h.


Constructor & Destructor Documentation

Definition at line 87 of file b2PolygonShape.h.


Member Function Documentation

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

Implement b2Shape.

Implements b2Shape.

Definition at line 22 of file b2PolygonShape.cpp.

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

Implements b2Shape.

Definition at line 339 of file b2PolygonShape.cpp.

void b2PolygonShape::ComputeMass ( b2MassData massData,
float32  density 
) const [virtual]
See also:
b2Shape::ComputeMass

Implements b2Shape.

Definition at line 358 of file b2PolygonShape.cpp.

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

Implements b2Shape.

Definition at line 69 of file b2PolygonShape.cpp.

const b2Vec2 & b2PolygonShape::GetVertex ( int32  index) const [inline]

Get a vertex by index.

Definition at line 95 of file b2PolygonShape.h.

Get the vertex count.

Definition at line 72 of file b2PolygonShape.h.

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

Implement b2Shape.

Implements b2Shape.

Definition at line 267 of file b2PolygonShape.cpp.

void b2PolygonShape::Set ( const b2Vec2 points,
int32  count 
)

Create a convex hull from the given array of local points. The count must be in the range [3, b2_maxPolygonVertices].

Warning:
the points may be re-ordered, even if they form a convex polygon
collinear points are handled but not removed. Collinear points may lead to poor stacking behavior.

Definition at line 120 of file b2PolygonShape.cpp.

void b2PolygonShape::SetAsBox ( float32  hx,
float32  hy 
)

Build vertices to represent an axis-aligned box centered on the local origin.

Parameters:
hxthe half-width.
hythe half-height.

Definition at line 30 of file b2PolygonShape.cpp.

void b2PolygonShape::SetAsBox ( float32  hx,
float32  hy,
const b2Vec2 center,
float32  angle 
)

Build vertices to represent an oriented box.

Parameters:
hxthe half-width.
hythe half-height.
centerthe center of the box in local coordinates.
anglethe rotation of the box in local coordinates.

Definition at line 44 of file b2PolygonShape.cpp.

bool b2PolygonShape::TestPoint ( const b2Transform transform,
const b2Vec2 p 
) const [virtual]
See also:
b2Shape::TestPoint

Implements b2Shape.

Definition at line 251 of file b2PolygonShape.cpp.

bool b2PolygonShape::Validate ( ) const

Validate convexity. This is a very time consuming operation.

Returns:
true if valid

Definition at line 441 of file b2PolygonShape.cpp.


Member Data Documentation

Definition at line 81 of file b2PolygonShape.h.

Definition at line 84 of file b2PolygonShape.h.

Definition at line 83 of file b2PolygonShape.h.

Definition at line 82 of file b2PolygonShape.h.


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


mvsim
Author(s):
autogenerated on Thu Sep 7 2017 09:27:49