Bullet Collision Detection & Physics Library
btInternalEdgeUtility.h
Go to the documentation of this file.
1 
2 #ifndef BT_INTERNAL_EDGE_UTILITY_H
3 #define BT_INTERNAL_EDGE_UTILITY_H
4 
5 #include "LinearMath/btHashMap.h"
6 #include "LinearMath/btVector3.h"
7 
9 
12 
14 class btCollisionObject;
16 class btManifoldPoint;
17 class btIDebugDraw;
19 
21 {
23  BT_TRIANGLE_CONCAVE_DOUBLE_SIDED = 2, //double sided options are experimental, single sided is recommended
25 };
26 
28 void btGenerateInternalEdgeInfo(btBvhTriangleMeshShape* trimeshShape, btTriangleInfoMap* triangleInfoMap);
29 
30 void btGenerateInternalEdgeInfo(btHeightfieldTerrainShape* trimeshShape, btTriangleInfoMap* triangleInfoMap);
31 
34 void btAdjustInternalEdgeContacts(btManifoldPoint& cp, const btCollisionObjectWrapper* trimeshColObj0Wrap, const btCollisionObjectWrapper* otherColObj1Wrap, int partId0, int index0, int normalAdjustFlags = 0);
35 
38 //#define BT_INTERNAL_EDGE_DEBUG_DRAW
39 
40 #ifdef BT_INTERNAL_EDGE_DEBUG_DRAW
41 void btSetDebugDrawer(btIDebugDraw* debugDrawer);
42 #endif //BT_INTERNAL_EDGE_DEBUG_DRAW
43 
44 #endif //BT_INTERNAL_EDGE_UTILITY_H
BT_TRIANGLE_CONVEX_DOUBLE_SIDED
Definition: btInternalEdgeUtility.h:24
btCollisionObject
btCollisionObject can be used to manage collision detection objects.
Definition: btCollisionObject.h:48
btCollisionObjectWrapper
Definition: btCollisionObjectWrapper.h:17
btTriangleInfoMap.h
btBvhTriangleMeshShape
The btBvhTriangleMeshShape is a static-triangle mesh shape, it can only be used for fixed/non-moving ...
Definition: btBvhTriangleMeshShape.h:34
btAdjustInternalEdgeContacts
void btAdjustInternalEdgeContacts(btManifoldPoint &cp, const btCollisionObjectWrapper *trimeshColObj0Wrap, const btCollisionObjectWrapper *otherColObj1Wrap, int partId0, int index0, int normalAdjustFlags=0)
Call the btFixMeshNormal to adjust the collision normal, using the triangle info map (generated using...
Definition: btInternalEdgeUtility.cpp:480
btHeightfieldTerrainShape
btHeightfieldTerrainShape simulates a 2D heightfield terrain
Definition: btHeightfieldTerrainShape.h:72
btGenerateInternalEdgeInfo
void btGenerateInternalEdgeInfo(btBvhTriangleMeshShape *trimeshShape, btTriangleInfoMap *triangleInfoMap)
Call btGenerateInternalEdgeInfo to create triangle info, store in the shape 'userInfo'.
Definition: btInternalEdgeUtility.cpp:331
BT_TRIANGLE_CONCAVE_DOUBLE_SIDED
Definition: btInternalEdgeUtility.h:23
btVector3.h
btIDebugDraw
The btIDebugDraw interface class allows hooking up a debug renderer to visually debug simulations.
Definition: btIDebugDraw.h:26
btManifoldPoint
ManifoldContactPoint collects and maintains persistent contactpoints.
Definition: btManifoldPoint.h:51
btTriangleInfoMap
The btTriangleInfoMap stores edge angle information for some triangles. You can compute this informat...
Definition: btTriangleInfoMap.h:53
btHashMap.h
btInternalEdgeAdjustFlags
btInternalEdgeAdjustFlags
Definition: btInternalEdgeUtility.h:20
BT_TRIANGLE_CONVEX_BACKFACE_MODE
Definition: btInternalEdgeUtility.h:22