void btBU_Simplex1to4_addVertex(btBU_Simplex1to4* obj, const btScalar* pt) { VECTOR3_CONV(pt); obj->addVertex(VECTOR3_USE(pt)); }
HingeConstraint::HingeConstraint(btHingeConstraint* native) : TypedConstraint(native) { } HingeConstraint::HingeConstraint(RigidBody^ rigidBodyA, RigidBody^ rigidBodyB, Vector3 pivotInA, Vector3 pivotInB, Vector3 axisInA, Vector3 axisInB, bool useReferenceFrameA) : TypedConstraint(0) { VECTOR3_CONV(pivotInA); VECTOR3_CONV(pivotInB); VECTOR3_CONV(axisInA); VECTOR3_CONV(axisInB); UnmanagedPointer = new btHingeConstraint(*(btRigidBody*)rigidBodyA->_native, *(btRigidBody*)rigidBodyB->_native, VECTOR3_USE(pivotInA), VECTOR3_USE(pivotInB), VECTOR3_USE(axisInA), VECTOR3_USE(axisInB), useReferenceFrameA); VECTOR3_DEL(pivotInA); VECTOR3_DEL(pivotInB); VECTOR3_DEL(axisInA); VECTOR3_DEL(axisInB); _rigidBodyA = rigidBodyA; _rigidBodyB = rigidBodyB; } HingeConstraint::HingeConstraint(RigidBody^ rigidBodyA, RigidBody^ rigidBodyB, Vector3 pivotInA, Vector3 pivotInB, Vector3 axisInA, Vector3 axisInB) : TypedConstraint(0) { VECTOR3_CONV(pivotInA);
btBU_Simplex1to4* btBU_Simplex1to4_new2(const btScalar* pt0) { VECTOR3_CONV(pt0); return new btBU_Simplex1to4(VECTOR3_USE(pt0)); }
btBU_Simplex1to4* btBU_Simplex1to4_new3(const btScalar* pt0, const btScalar* pt1) { VECTOR3_CONV(pt0); VECTOR3_CONV(pt1); return new btBU_Simplex1to4(VECTOR3_USE(pt0), VECTOR3_USE(pt1)); }
void btCharacterControllerInterface_warp(btCharacterControllerInterface* obj, const btScalar* origin) { VECTOR3_CONV(origin); obj->warp(VECTOR3_USE(origin)); }
void btCharacterControllerInterface_setVelocityForTimeInterval(btCharacterControllerInterface* obj, const btScalar* velocity, btScalar timeInterval) { VECTOR3_CONV(velocity); obj->setVelocityForTimeInterval(VECTOR3_USE(velocity), timeInterval); }
void btCharacterControllerInterface_setWalkDirection(btCharacterControllerInterface* obj, const btScalar* walkDirection) { VECTOR3_CONV(walkDirection); obj->setWalkDirection(VECTOR3_USE(walkDirection)); }
void MultibodyLink::SetAxisTop(int dof, Vector3 axis) { VECTOR3_DEF(axis); _native->setAxisTop(dof, VECTOR3_USE(axis)); VECTOR3_DEL(axis); }
BroadphaseProxy::BroadphaseProxy() { UnmanagedPointer = new btBroadphaseProxy(); } BroadphaseProxy::BroadphaseProxy(Vector3 aabbMin, Vector3 aabbMax, Object^ userObject, CollisionFilterGroups collisionFilterGroup, CollisionFilterGroups collisionFilterMask, IntPtr multiSapParentProxy) { VECTOR3_DEF(aabbMin); VECTOR3_DEF(aabbMax); _clientObject = userObject; UnmanagedPointer = new btBroadphaseProxy(VECTOR3_USE(aabbMin), VECTOR3_USE(aabbMax), 0, (short int)collisionFilterGroup, (short int)collisionFilterMask, multiSapParentProxy.ToPointer() ); VECTOR3_DEL(aabbMin); VECTOR3_DEL(aabbMax); } BroadphaseProxy::BroadphaseProxy(Vector3 aabbMin, Vector3 aabbMax, Object^ userObject, CollisionFilterGroups collisionFilterGroup, CollisionFilterGroups collisionFilterMask) { VECTOR3_DEF(aabbMin); VECTOR3_DEF(aabbMax); _clientObject = userObject;