Blender V2.61 - r43446
Public Member Functions

btBox2dShape Class Reference

The btBox2dShape is a box primitive around the origin, its sides axis aligned with length specified by half extents, in local shape coordinates. When used as part of a btCollisionObject or btRigidBody it will be an oriented box in world space. More...

#include <btBox2dShape.h>

Inheritance diagram for btBox2dShape:
Inheritance graph
[legend]

List of all members.

Public Member Functions

btVector3 getHalfExtentsWithMargin () const
const btVector3 & getHalfExtentsWithoutMargin () const
virtual btVector3 localGetSupportingVertex (const btVector3 &vec) const
SIMD_FORCE_INLINE btVector3 localGetSupportingVertexWithoutMargin (const btVector3 &vec) const
virtual void batchedUnitVectorGetSupportingVertexWithoutMargin (const btVector3 *vectors, btVector3 *supportVerticesOut, int numVectors) const
 btBox2dShape (const btVector3 &boxHalfExtents)
virtual void setMargin (btScalar collisionMargin)
virtual void setLocalScaling (const btVector3 &scaling)
virtual void getAabb (const btTransform &t, btVector3 &aabbMin, btVector3 &aabbMax) const
 getAabb's default implementation is brute force, expected derived classes to implement a fast dedicated version
virtual void calculateLocalInertia (btScalar mass, btVector3 &inertia) const
int getVertexCount () const
virtual int getNumVertices () const
const btVector3 * getVertices () const
const btVector3 * getNormals () const
virtual void getPlane (btVector3 &planeNormal, btVector3 &planeSupport, int i) const
const btVector3 & getCentroid () const
virtual int getNumPlanes () const
virtual int getNumEdges () const
virtual void getVertex (int i, btVector3 &vtx) const
virtual void getPlaneEquation (btVector4 &plane, int i) const
virtual void getEdge (int i, btVector3 &pa, btVector3 &pb) const
virtual bool isInside (const btVector3 &pt, btScalar tolerance) const
virtual const char * getName () const
virtual int getNumPreferredPenetrationDirections () const
virtual void getPreferredPenetrationDirection (int index, btVector3 &penetrationVector) const

Detailed Description

The btBox2dShape is a box primitive around the origin, its sides axis aligned with length specified by half extents, in local shape coordinates. When used as part of a btCollisionObject or btRigidBody it will be an oriented box in world space.

Definition at line 26 of file btBox2dShape.h.


Constructor & Destructor Documentation

btBox2dShape::btBox2dShape ( const btVector3 &  boxHalfExtents) [inline]

Member Function Documentation

virtual void btBox2dShape::batchedUnitVectorGetSupportingVertexWithoutMargin ( const btVector3 *  vectors,
btVector3 *  supportVerticesOut,
int  numVectors 
) const [inline, virtual]

Reimplemented from btPolyhedralConvexShape.

Definition at line 71 of file btBox2dShape.h.

References btFsels, getHalfExtentsWithoutMargin(), and i.

void btBox2dShape::calculateLocalInertia ( btScalar  mass,
btVector3 &  inertia 
) const [virtual]

Reimplemented from btPolyhedralConvexShape.

Definition at line 28 of file btBox2dShape.cpp.

References getHalfExtentsWithMargin().

void btBox2dShape::getAabb ( const btTransform t,
btVector3 &  aabbMin,
btVector3 &  aabbMax 
) const [virtual]

getAabb's default implementation is brute force, expected derived classes to implement a fast dedicated version

Reimplemented from btConvexInternalShape.

Definition at line 22 of file btBox2dShape.cpp.

References btTransformAabb(), getHalfExtentsWithoutMargin(), and btConvexInternalShape::getMargin().

const btVector3& btBox2dShape::getCentroid ( ) const [inline]

Definition at line 174 of file btBox2dShape.h.

Referenced by FindMaxSeparation().

virtual void btBox2dShape::getEdge ( int  i,
btVector3 &  pa,
btVector3 &  pb 
) const [inline, virtual]

Implements btPolyhedralConvexShape.

Definition at line 233 of file btBox2dShape.h.

References btAssert, getVertex(), and i.

btVector3 btBox2dShape::getHalfExtentsWithMargin ( ) const [inline]
const btVector3& btBox2dShape::getHalfExtentsWithoutMargin ( ) const [inline]
virtual const char* btBox2dShape::getName ( void  ) const [inline, virtual]

Definition at line 322 of file btBox2dShape.h.

const btVector3* btBox2dShape::getNormals ( ) const [inline]

Definition at line 153 of file btBox2dShape.h.

Referenced by EdgeSeparation(), FindIncidentEdge(), and FindMaxSeparation().

virtual int btBox2dShape::getNumEdges ( ) const [inline, virtual]

Implements btPolyhedralConvexShape.

Definition at line 186 of file btBox2dShape.h.

virtual int btBox2dShape::getNumPlanes ( ) const [inline, virtual]

Implements btPolyhedralConvexShape.

Definition at line 179 of file btBox2dShape.h.

virtual int btBox2dShape::getNumPreferredPenetrationDirections ( ) const [inline, virtual]

Reimplemented from btConvexInternalShape.

Definition at line 327 of file btBox2dShape.h.

virtual int btBox2dShape::getNumVertices ( ) const [inline, virtual]

Implements btPolyhedralConvexShape.

Definition at line 143 of file btBox2dShape.h.

virtual void btBox2dShape::getPlane ( btVector3 &  planeNormal,
btVector3 &  planeSupport,
int  i 
) const [inline, virtual]

Implements btPolyhedralConvexShape.

Definition at line 164 of file btBox2dShape.h.

References getPlaneEquation(), and localGetSupportingVertex().

virtual void btBox2dShape::getPlaneEquation ( btVector4 plane,
int  i 
) const [inline, virtual]

Definition at line 203 of file btBox2dShape.h.

References btAssert, getHalfExtentsWithoutMargin(), and btVector4::setValue().

Referenced by getPlane().

virtual void btBox2dShape::getPreferredPenetrationDirection ( int  index,
btVector3 &  penetrationVector 
) const [inline, virtual]

Reimplemented from btConvexInternalShape.

Definition at line 332 of file btBox2dShape.h.

References btAssert.

virtual void btBox2dShape::getVertex ( int  i,
btVector3 &  vtx 
) const [inline, virtual]

Implements btPolyhedralConvexShape.

Definition at line 192 of file btBox2dShape.h.

References getHalfExtentsWithoutMargin().

Referenced by getEdge().

int btBox2dShape::getVertexCount ( ) const [inline]
const btVector3* btBox2dShape::getVertices ( ) const [inline]

Definition at line 148 of file btBox2dShape.h.

Referenced by b2CollidePolygons(), EdgeSeparation(), and FindIncidentEdge().

virtual bool btBox2dShape::isInside ( const btVector3 &  pt,
btScalar  tolerance 
) const [inline, virtual]

Implements btPolyhedralConvexShape.

Definition at line 304 of file btBox2dShape.h.

References getHalfExtentsWithoutMargin().

virtual btVector3 btBox2dShape::localGetSupportingVertex ( const btVector3 &  vec) const [inline, virtual]

Reimplemented from btConvexInternalShape.

Definition at line 51 of file btBox2dShape.h.

References btFsels, getHalfExtentsWithoutMargin(), and btConvexInternalShape::getMargin().

Referenced by getPlane().

SIMD_FORCE_INLINE btVector3 btBox2dShape::localGetSupportingVertexWithoutMargin ( const btVector3 &  vec) const [inline, virtual]

Reimplemented from btPolyhedralConvexShape.

Definition at line 62 of file btBox2dShape.h.

References btFsels, and getHalfExtentsWithoutMargin().

virtual void btBox2dShape::setLocalScaling ( const btVector3 &  scaling) [inline, virtual]
virtual void btBox2dShape::setMargin ( btScalar  collisionMargin) [inline, virtual]

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