Blender  V3.3
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
btBvhTriangleMeshShape(btStridingMeshInterface *meshInterface, bool useQuantizedAabbCompression, bool buildBvh=true)
btCollisionObject
btHeightfieldTerrainShape(int heightStickWidth, int heightStickLength, const void *heightfieldData, btScalar heightScale, btScalar minHeight, btScalar maxHeight, int upAxis, PHY_ScalarType heightDataType, bool flipQuadEdges)
preferred constructor
btInternalEdgeAdjustFlags
@ BT_TRIANGLE_CONVEX_DOUBLE_SIDED
@ BT_TRIANGLE_CONVEX_BACKFACE_MODE
@ BT_TRIANGLE_CONCAVE_DOUBLE_SIDED
void btGenerateInternalEdgeInfo(btBvhTriangleMeshShape *trimeshShape, btTriangleInfoMap *triangleInfoMap)
Call btGenerateInternalEdgeInfo to create triangle info, store in the shape 'userInfo'.
void btAdjustInternalEdgeContacts(btManifoldPoint &cp, const btCollisionObjectWrapper *trimeshColObj0Wrap, const btCollisionObjectWrapper *otherColObj1Wrap, int partId0, int index0, int normalAdjustFlags=0)
Changes a btManifoldPoint collision normal to the normal from the mesh.
The btTriangleInfoMap stores edge angle information for some triangles. You can compute this informat...