PxWheelQueryResult Struct Reference

Structure containing data describing the non-persistent state of each suspension/wheel/tire unit. This structure is filled out in PxVehicleUpdates and PxVehicleUpdateSingleVehicleAndStoreTelemetryData. More...

#include <PxVehicleUpdate.h>

Collaboration diagram for PxWheelQueryResult:

Public Member Functions

 PxWheelQueryResult ()
 

Public Attributes

PxVec3 suspLineStart
 Start point of suspension line raycast/sweep used in the raycast/sweep completed immediately before PxVehicleUpdates. More...
 
PxVec3 suspLineDir
 Directions of suspension line raycast/sweep used in the raycast/sweep completed immediately before PxVehicleUpdates. More...
 
PxReal suspLineLength
 Lengths of suspension line raycast/sweep used in raycast/sweep completed immediately before PxVehicleUpdates. More...
 
bool isInAir
 If suspension travel limits forbid the wheel from touching the drivable surface then isInAir is true. More...
 
PxActortireContactActor
 PxActor instance of the driving surface under the corresponding vehicle wheel. More...
 
PxShapetireContactShape
 PxShape instance of the driving surface under the corresponding vehicle wheel. More...
 
const PxMaterialtireSurfaceMaterial
 PxMaterial instance of the driving surface under the corresponding vehicle wheel. More...
 
PxU32 tireSurfaceType
 Surface type integer that corresponds to the mapping between tireSurfaceMaterial and integer as described in PxVehicleDrivableSurfaceToTireFrictionPairs. More...
 
PxVec3 tireContactPoint
 Point on the drivable surface hit by the most recent suspension raycast or sweep. More...
 
PxVec3 tireContactNormal
 Normal on the drivable surface at the hit point of the most recent suspension raycast or sweep. More...
 
PxReal tireFriction
 Friction experienced by the tire for the combination of tire type and surface type after accounting for the friction vs slip graph. More...
 
PxReal suspJounce
 Compression of the suspension spring. More...
 
PxReal suspSpringForce
 Magnitude of force applied by the suspension spring along the direction of suspension travel. More...
 
PxVec3 tireLongitudinalDir
 Forward direction of the wheel/tire accounting for steer/toe/camber angle projected on to the contact plane of the drivable surface. More...
 
PxVec3 tireLateralDir
 Lateral direction of the wheel/tire accounting for steer/toe/camber angle projected on to the contact plan of the drivable surface. More...
 
PxReal longitudinalSlip
 Longitudinal slip of the tire. More...
 
PxReal lateralSlip
 Lateral slip of the tire. More...
 
PxReal steerAngle
 Steer angle of the wheel about the "up" vector accounting for input steer and toe and, if applicable, Ackermann steer correction. More...
 
PxTransform localPose
 Local pose of the wheel. More...
 

Detailed Description

Structure containing data describing the non-persistent state of each suspension/wheel/tire unit. This structure is filled out in PxVehicleUpdates and PxVehicleUpdateSingleVehicleAndStoreTelemetryData.

See also
PxVehicleUpdates, PxVehicleUpdateSingleVehicleAndStoreTelemetryData

Constructor & Destructor Documentation

◆ PxWheelQueryResult()

PxWheelQueryResult::PxWheelQueryResult ( )
inline

Member Data Documentation

◆ isInAir

bool PxWheelQueryResult::isInAir

If suspension travel limits forbid the wheel from touching the drivable surface then isInAir is true.

Note
If the wheel can be placed on the contact plane of the most recent suspension line raycast/sweep then isInAir is false.
If PxVehicleWheelsSimFlag::eLIMIT_SUSPENSION_EXPANSION_VELOCITY is set, then isInAir will also be true if the suspension force is not large enough to expand to the target length in the given simulation time step.
If no raycast/sweep for the corresponding suspension was performed immediately prior to PxVehicleUpdates then isInAir is computed using the contact plane that was hit by the most recent suspension line raycast/sweep.

◆ lateralSlip

PxReal PxWheelQueryResult::lateralSlip

Lateral slip of the tire.

Note
If suspension travel limits forbid the wheel from touching the drivable surface then lateralSlip is 0.0
The lateral slip angle is approximately PxAtan(vx / PxAbs(vz)) where vx and vz are the components of rigid body velocity at the wheel base along the wheel's lateral and longitudinal directions, respectively.
If no raycast or sweep for the corresponding suspension was performed immediately prior to PxVehicleUpdates then the tire lateral slip is computed using the contact plane that was hit by the most recent suspension line raycast or sweep.

◆ localPose

PxTransform PxWheelQueryResult::localPose

Local pose of the wheel.

◆ longitudinalSlip

PxReal PxWheelQueryResult::longitudinalSlip

Longitudinal slip of the tire.

Note
If suspension travel limits forbid the wheel from touching the drivable surface then longitudinalSlip is 0.0
The longitudinal slip is approximately (w*r - vz) / PxAbs(vz) where w is the angular speed of the wheel, r is the radius of the wheel, and vz component of rigid body velocity computed at the wheel base along the longitudinal direction of the tire.
If no raycast or sweep for the corresponding suspension was performed immediately prior to PxVehicleUpdates then the tire longitudinal slip is computed using the contact plane that was hit by the most recent suspension line raycast or sweep.

◆ steerAngle

PxReal PxWheelQueryResult::steerAngle

Steer angle of the wheel about the "up" vector accounting for input steer and toe and, if applicable, Ackermann steer correction.

See also
PxVehicleWheelData::mToeAngle

◆ suspJounce

PxReal PxWheelQueryResult::suspJounce

Compression of the suspension spring.

Note
If suspension travel limits forbid the wheel from touching the drivable surface then the jounce is -PxVehicleSuspensionData.mMaxDroop The jounce can never exceed PxVehicleSuspensionData.mMaxCompression. Positive values result when the suspension is compressed from the rest position, while negative values mean the suspension is elongated from the rest position.
If no raycast or sweep for the corresponding suspension was performed immediately prior to PxVehicleUpdates then the suspension compression is computed using the contact plane that was hit by the most recent suspension line raycast or sweep.

◆ suspLineDir

PxVec3 PxWheelQueryResult::suspLineDir

Directions of suspension line raycast/sweep used in the raycast/sweep completed immediately before PxVehicleUpdates.

Note
If no raycast/sweep for the corresponding suspension was performed immediately prior to PxVehicleUpdates then (0,0,0) is stored.
See also
PxVehicleSuspensionRaycasts, PxVehicleSuspensionRaycasts

◆ suspLineLength

PxReal PxWheelQueryResult::suspLineLength

Lengths of suspension line raycast/sweep used in raycast/sweep completed immediately before PxVehicleUpdates.

Note
If no raycast/sweep for the corresponding suspension was performed immediately prior to PxVehicleUpdates then 0 is stored.
See also
PxVehicleSuspensionRaycasts, PxVehicleSuspensionRaycasts

◆ suspLineStart

PxVec3 PxWheelQueryResult::suspLineStart

Start point of suspension line raycast/sweep used in the raycast/sweep completed immediately before PxVehicleUpdates.

Note
If no raycast/sweep for the corresponding suspension was performed immediately prior to PxVehicleUpdates then (0,0,0) is stored.
See also
PxVehicleSuspensionRaycasts, PxVehicleSuspensionRaycasts

◆ suspSpringForce

PxReal PxWheelQueryResult::suspSpringForce

Magnitude of force applied by the suspension spring along the direction of suspension travel.

Note
If suspension travel limits forbid the wheel from touching the drivable surface then the force is 0
If no raycast or sweep for the corresponding suspension was performed immediately prior to PxVehicleUpdates then the suspension spring force is computed using the contact plane that was hit by the most recent suspension line raycast or sweep.
See also
PxVehicleWheelsSimData::getSuspTravelDirection

◆ tireContactActor

PxActor* PxWheelQueryResult::tireContactActor

PxActor instance of the driving surface under the corresponding vehicle wheel.

Note
If suspension travel limits forbid the wheel from touching the drivable surface then tireContactActor is NULL.
If no raycast/sweep for the corresponding suspension was performed immediately prior to PxVehicleUpdates then NULL is stored.

◆ tireContactNormal

PxVec3 PxWheelQueryResult::tireContactNormal

Normal on the drivable surface at the hit point of the most recent suspension raycast or sweep.

Note
If suspension travel limits forbid the wheel from touching the drivable surface then the contact normal is (0,0,0).
If no raycast or sweep for the corresponding suspension was performed immediately prior to PxVehicleUpdates then (0,0,0) is stored.

◆ tireContactPoint

PxVec3 PxWheelQueryResult::tireContactPoint

Point on the drivable surface hit by the most recent suspension raycast or sweep.

Note
If suspension travel limits forbid the wheel from touching the drivable surface then the contact point is (0,0,0).
If no raycast or sweep for the corresponding suspension was performed immediately prior to PxVehicleUpdates then (0,0,0) is stored.

◆ tireContactShape

PxShape* PxWheelQueryResult::tireContactShape

PxShape instance of the driving surface under the corresponding vehicle wheel.

Note
If suspension travel limits forbid the wheel from touching the drivable surface then tireContactShape is NULL.
If no raycast/sweep for the corresponding suspension was performed immediately prior to PxVehicleUpdates then NULL is stored.

◆ tireFriction

PxReal PxWheelQueryResult::tireFriction

Friction experienced by the tire for the combination of tire type and surface type after accounting for the friction vs slip graph.

Note
If suspension travel limits forbid the wheel from touching the drivable surface then the tire friction is 0.
If no raycast or sweep for the corresponding suspension was performed immediately prior to PxVehicleUpdates then the stored tire friction is the value computed in PxVehicleUpdates that immediately followed the last raycast or sweep.
See also
PxVehicleDrivableSurfaceToTireFrictionPairs, PxVehicleTireData

◆ tireLateralDir

PxVec3 PxWheelQueryResult::tireLateralDir

Lateral direction of the wheel/tire accounting for steer/toe/camber angle projected on to the contact plan of the drivable surface.

Note
If suspension travel limits forbid the wheel from touching the drivable surface then tireLateralDir is (0,0,0)
If no raycast or sweep for the corresponding suspension was performed immediately prior to PxVehicleUpdates then the tire lateral direction is computed using the contact plane that was hit by the most recent suspension line raycast or sweep.

◆ tireLongitudinalDir

PxVec3 PxWheelQueryResult::tireLongitudinalDir

Forward direction of the wheel/tire accounting for steer/toe/camber angle projected on to the contact plane of the drivable surface.

Note
If suspension travel limits forbid the wheel from touching the drivable surface then tireLongitudinalDir is (0,0,0)
If no raycast or sweep for the corresponding suspension was performed immediately prior to PxVehicleUpdates then the tire longitudinal direction is computed using the contact plane that was hit by the most recent suspension line raycast or sweep.

◆ tireSurfaceMaterial

const PxMaterial* PxWheelQueryResult::tireSurfaceMaterial

PxMaterial instance of the driving surface under the corresponding vehicle wheel.

Note
If suspension travel limits forbid the wheel from touching the drivable surface then tireSurfaceMaterial is NULL.
If no raycast/sweep for the corresponding suspension was performed immediately prior to PxVehicleUpdates then NULL is stored.

◆ tireSurfaceType

PxU32 PxWheelQueryResult::tireSurfaceType

Surface type integer that corresponds to the mapping between tireSurfaceMaterial and integer as described in PxVehicleDrivableSurfaceToTireFrictionPairs.

Note
If suspension travel limits forbid the wheel from touching the drivable surface then tireSurfaceType is PxVehicleDrivableSurfaceType::eSURFACE_TYPE_UNKNOWN.
If no raycast/sweep for the corresponding suspension was performed immediately prior to PxVehicleUpdates then PxVehicleDrivableSurfaceType::eSURFACE_TYPE_UNKNOWN is stored.
See also
PxVehicleDrivableSurfaceToTireFrictionPairs

The documentation for this struct was generated from the following file: