Blender V2.61 - r43446
Classes | Functions

btInternalEdgeUtility.cpp File Reference

#include "btInternalEdgeUtility.h"
#include "BulletCollision/CollisionShapes/btBvhTriangleMeshShape.h"
#include "BulletCollision/CollisionShapes/btTriangleShape.h"
#include "BulletCollision/CollisionDispatch/btCollisionObject.h"
#include "BulletCollision/NarrowPhaseCollision/btManifoldPoint.h"
#include "LinearMath/btIDebugDraw.h"

Go to the source code of this file.

Classes

struct  btConnectivityProcessor

Functions

static int btGetHash (int partId, int triangleIndex)
static btScalar btGetAngle (const btVector3 &edgeA, const btVector3 &normalA, const btVector3 &normalB)
void btGenerateInternalEdgeInfo (btBvhTriangleMeshShape *trimeshShape, btTriangleInfoMap *triangleInfoMap)
 Call btGenerateInternalEdgeInfo to create triangle info, store in the shape 'userInfo'.
void btNearestPointInLineSegment (const btVector3 &point, const btVector3 &line0, const btVector3 &line1, btVector3 &nearestPoint)
bool btClampNormal (const btVector3 &edge, const btVector3 &tri_normal_org, const btVector3 &localContactNormalOnB, btScalar correctedEdgeAngle, btVector3 &clampedLocalNormal)
void btAdjustInternalEdgeContacts (btManifoldPoint &cp, const btCollisionObject *colObj0, const btCollisionObject *colObj1, int partId0, int index0, int normalAdjustFlags)
 Changes a btManifoldPoint collision normal to the normal from the mesh.

Function Documentation

void btAdjustInternalEdgeContacts ( btManifoldPoint cp,
const btCollisionObject *  trimeshColObj0,
const btCollisionObject *  otherColObj1,
int  partId0,
int  index0,
int  normalAdjustFlags = 0 
)
bool btClampNormal ( const btVector3 &  edge,
const btVector3 &  tri_normal_org,
const btVector3 &  localContactNormalOnB,
btScalar  correctedEdgeAngle,
btVector3 &  clampedLocalNormal 
)

Definition at line 417 of file btInternalEdgeUtility.cpp.

References btGetAngle().

Referenced by btAdjustInternalEdgeContacts().

void btGenerateInternalEdgeInfo ( btBvhTriangleMeshShape *  trimeshShape,
btTriangleInfoMap triangleInfoMap 
)
static btScalar btGetAngle ( const btVector3 &  edgeA,
const btVector3 &  normalA,
const btVector3 &  normalB 
) [static]

Definition at line 42 of file btInternalEdgeUtility.cpp.

References angle(), and btAtan2().

Referenced by btClampNormal(), and btConnectivityProcessor::processTriangle().

static int btGetHash ( int  partId,
int  triangleIndex 
) [static]
void btNearestPointInLineSegment ( const btVector3 &  point,
const btVector3 &  line0,
const btVector3 &  line1,
btVector3 &  nearestPoint 
)

Definition at line 391 of file btInternalEdgeUtility.cpp.

References dot().

Referenced by btAdjustInternalEdgeContacts().