API reference

StandardVelocityCalculator Class

Extends MonoBehaviour
Velocity calculator that depends only on an <cref="IPoseInputDevice" />, which means it's input agnostic.
The calculator determines the final velocity of a thrown GameObject by using buffered pose data that accounts for factors like trend velocity, tangential velocity, and external velocity.

Properties

AddedInstantLinearVelocity : Vector3
[Get]
Signature
Vector3 AddedInstantLinearVelocity
AddedTangentialLinearVelocity : Vector3
[Get]
Signature
Vector3 AddedTangentialLinearVelocity
AddedTrendLinearVelocity : Vector3
[Get]
Signature
Vector3 AddedTrendLinearVelocity
AxisOfRotation : Vector3
[Get]
Tangential velocity information, updated upon release.
Signature
Vector3 AxisOfRotation
AxisOfRotationOrigin : Vector3
[Get]
Signature
Vector3 AxisOfRotationOrigin
CenterOfMassToObject : Vector3
[Get]
Signature
Vector3 CenterOfMassToObject
ExternalVelocityInfluence : float
[Get][Set]
Signature
float ExternalVelocityInfluence
InstantVelocityInfluence : float
[Get][Set]
Signature
float InstantVelocityInfluence
MaxPercentZeroSamplesTrendVeloc : float
[Get][Set]
Signature
float MaxPercentZeroSamplesTrendVeloc
ReferenceOffset : Vector3
[Get][Set]
Signature
Vector3 ReferenceOffset
StepBackTime : float
[Get][Set]
Signature
float StepBackTime
TangentialDirection : Vector3
[Get]
Signature
Vector3 TangentialDirection
TangentialVelocityInfluence : float
[Get][Set]
Signature
float TangentialVelocityInfluence
ThrowInputDevice : IPoseInputDevice
[Get]
Signature
IPoseInputDevice ThrowInputDevice
TrendVelocityInfluence : float
[Get][Set]
Signature
float TrendVelocityInfluence
UpdateFrequency : float
[Get]
Signature
float UpdateFrequency

Events

WhenNewSampleAvailable : Action< ReleaseVelocityInformation >
Signature
Action<ReleaseVelocityInformation> WhenNewSampleAvailable
WhenThrowVelocitiesChanged : Action< List< ReleaseVelocityInformation > >
Signature
Action<List<ReleaseVelocityInformation> > WhenThrowVelocitiesChanged

Protected Methods

Awake ()
Signature
virtual void Awake()
Returns
void
LateUpdate ()
Signature
virtual void LateUpdate()
Returns
void
Start ()
Signature
virtual void Start()
Returns
void

Methods

CalculateThrowVelocity ( objectThrown )
Signature
ReleaseVelocityInformation CalculateThrowVelocity(Transform objectThrown)
Parameters
objectThrown: Transform
InjectAllStandardVelocityCalculator ( poseInputDevice , bufferingParams )
Signature
void InjectAllStandardVelocityCalculator(IPoseInputDevice poseInputDevice, BufferingParams bufferingParams)
Parameters
poseInputDevice: IPoseInputDevice
bufferingParams: BufferingParams
Returns
void
InjectBufferingParams ( bufferingParams )
Signature
void InjectBufferingParams(BufferingParams bufferingParams)
Parameters
bufferingParams: BufferingParams
Returns
void
InjectOptionalTimeProvider ( timeProvider )
Signature
void InjectOptionalTimeProvider(Func< float > timeProvider)
Parameters
timeProvider: Func< float >
Returns
void
InjectPoseInputDevice ( poseInputDevice )
Signature
void InjectPoseInputDevice(IPoseInputDevice poseInputDevice)
Parameters
poseInputDevice: IPoseInputDevice
Returns
void
LastThrowVelocities ()
Signature
IReadOnlyList< ReleaseVelocityInformation > LastThrowVelocities()
Returns
IReadOnlyList< ReleaseVelocityInformation >
SetTimeProvider ( timeProvider )
Sets a function that returns the current time in seconds.
Signature
void SetTimeProvider(Func< float > timeProvider)
Parameters
timeProvider: Func< float >
Returns
void
SetUpdateFrequency ( frequency )
Signature
void SetUpdateFrequency(float frequency)
Parameters
frequency: float
Returns
void

Inner Class

BufferingParams Class

Fields

BufferLengthSeconds : float
Signature
float BufferLengthSeconds
SampleFrequency : float
Signature
float SampleFrequency

Methods

Validate ()
Signature
void Validate()
Returns
void