Isis 3 Programmer Reference
IsisBullet.h
1
#ifndef IsisBullet_h
2
#define IsisBullet_h
3
8
/* SPDX-License-Identifier: CC0-1.0 */
9
51
#if defined(BT_SCALAR_H) || defined(B3_SCALAR_H)
52
#if !defined(BT_USE_DOUBLE_PRECISION) && !defined(B3_USE_DOUBLE_PRECISION)
53
#error "*** You must include IsisBullet.h prior to any Bullet includes ***"
54
#endif
55
#endif
56
57
// ISIS using the Bullet library requires double precision!! This sets the
58
// Bullet::btScalar type to double precision throughout the Bullet API.
59
#define BT_USE_DOUBLE_PRECISION 1
60
#define B3_USE_DOUBLE_PRECISION 1
61
62
// Go ahead and include all of Bullet here so the define will be applied
63
// universally.
64
#include <btBulletDynamicsCommon.h>
65
67
namespace
Isis
{
68
74
inline
int
bt_MaxBodyParts
() {
75
return
( 1<<MAX_NUM_PARTS_IN_BITS );
76
}
77
78
84
inline
unsigned
long
bt_MaxTriangles
() {
85
return
( 1<<(31-MAX_NUM_PARTS_IN_BITS) );
86
}
87
88
94
inline
int
b3_MaxBodyParts
() {
95
return
(
bt_MaxBodyParts
() );
96
}
97
98
104
inline
unsigned
long
b3_MaxTriangles
() {
105
return
(
bt_MaxTriangles
() );
106
}
107
108
};
109
110
#endif
Isis::bt_MaxTriangles
unsigned long bt_MaxTriangles()
Maximum number of triangles/part.
Definition:
IsisBullet.h:84
Isis::b3_MaxTriangles
unsigned long b3_MaxTriangles()
Maximum number of triangles/part in the Bullet 3 API.
Definition:
IsisBullet.h:104
Isis::bt_MaxBodyParts
int bt_MaxBodyParts()
Maximum number of parts/object.
Definition:
IsisBullet.h:74
Isis::b3_MaxBodyParts
int b3_MaxBodyParts()
Maximum number of parts/object in the Bullet 3 API.
Definition:
IsisBullet.h:94
Isis
This is free and unencumbered software released into the public domain.
Definition:
Apollo.h:16
src
base
objs
BulletShapeModel
IsisBullet.h