Bullet Collision Detection & Physics Library
btWheelInfo.h
Go to the documentation of this file.
1/*
2 * Copyright (c) 2005 Erwin Coumans https://bulletphysics.org
3 *
4 * Permission to use, copy, modify, distribute and sell this software
5 * and its documentation for any purpose is hereby granted without fee,
6 * provided that the above copyright notice appear in all copies.
7 * Erwin Coumans makes no representations about the suitability
8 * of this software for any purpose.
9 * It is provided "as is" without express or implied warranty.
10*/
11#ifndef BT_WHEEL_INFO_H
12#define BT_WHEEL_INFO_H
13
16
17class btRigidBody;
18
20{
27
34};
35
38{
40 {
41 //set by raycaster
43 btVector3 m_contactPointWS; //raycast hitpoint
45 btVector3 m_hardPointWS; //raycast starting point
46 btVector3 m_wheelDirectionWS; //direction in worldspace
47 btVector3 m_wheelAxleWS; // axle in worldspace
49 void* m_groundObject; //could be general void* ptr
50 };
51
53
55
58 btVector3 m_wheelAxleCS; // const or modified by steering
72
74
76
78
79 void* m_clientInfo; //can be used to store pointer to sync transforms...
80
82
84
85 {
88
97 m_steering = btScalar(0.);
99 m_rotation = btScalar(0.);
101 m_brake = btScalar(0.);
105 }
106
107 void updateWheel(const btRigidBody& chassis, RaycastInfo& raycastInfo);
108
111 //calculated by suspension
114};
115
116#endif //BT_WHEEL_INFO_H
float btScalar
The btScalar type abstracts floating point numbers, to easily switch between double and single floati...
Definition: btScalar.h:314
The btRigidBody is the main class for rigid body objects.
Definition: btRigidBody.h:60
The btTransform class supports rigid transforms with only translation and rotation and no scaling/she...
Definition: btTransform.h:30
btVector3 can be used to represent 3D points and vectors.
Definition: btVector3.h:82
btVector3 m_wheelDirectionWS
Definition: btWheelInfo.h:46
btWheelInfo contains information per wheel about friction and suspension.
Definition: btWheelInfo.h:38
btScalar m_clippedInvContactDotSuspension
Definition: btWheelInfo.h:109
btScalar m_skidInfo
Definition: btWheelInfo.h:113
void updateWheel(const btRigidBody &chassis, RaycastInfo &raycastInfo)
Definition: btWheelInfo.cpp:19
btScalar m_suspensionStiffness
Definition: btWheelInfo.h:63
btVector3 m_wheelDirectionCS
Definition: btWheelInfo.h:57
btScalar getSuspensionRestLength() const
Definition: btWheelInfo.cpp:14
btScalar m_suspensionRestLength1
Definition: btWheelInfo.h:59
btScalar m_maxSuspensionForce
Definition: btWheelInfo.h:71
btScalar m_rotation
Definition: btWheelInfo.h:68
btScalar m_maxSuspensionTravelCm
Definition: btWheelInfo.h:60
btScalar m_steering
Definition: btWheelInfo.h:67
btScalar m_wheelsSuspensionForce
Definition: btWheelInfo.h:112
btScalar m_wheelsRadius
Definition: btWheelInfo.h:62
bool m_bIsFrontWheel
Definition: btWheelInfo.h:77
btScalar m_rollInfluence
Definition: btWheelInfo.h:70
btVector3 m_chassisConnectionPointCS
Definition: btWheelInfo.h:56
void * m_clientInfo
Definition: btWheelInfo.h:79
btScalar m_brake
Definition: btWheelInfo.h:75
btScalar m_wheelsDampingCompression
Definition: btWheelInfo.h:64
btVector3 m_wheelAxleCS
Definition: btWheelInfo.h:58
btScalar m_suspensionRelativeVelocity
Definition: btWheelInfo.h:110
btScalar m_deltaRotation
Definition: btWheelInfo.h:69
btScalar m_frictionSlip
Definition: btWheelInfo.h:66
btScalar m_wheelsDampingRelaxation
Definition: btWheelInfo.h:65
btWheelInfo(btWheelInfoConstructionInfo &ci)
Definition: btWheelInfo.h:83
btTransform m_worldTransform
Definition: btWheelInfo.h:54
RaycastInfo m_raycastInfo
Definition: btWheelInfo.h:52
btScalar m_engineForce
Definition: btWheelInfo.h:73