Package com.github.stephengold.joltjni
Class WheelSettingsTvRef
java.lang.Object
com.github.stephengold.joltjni.JoltPhysicsObject
com.github.stephengold.joltjni.template.Ref
com.github.stephengold.joltjni.WheelSettingsTvRef
- All Implemented Interfaces:
ConstJoltPhysicsObject
,ConstSerializableObject
,ConstWheelSettings
,ConstWheelSettingsTv
,AutoCloseable
,Comparable<JoltPhysicsObject>
A counted reference to a
WheelSettingsTv
object. (native type:
Ref<WheelSettingsTV>
)-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionboolean
Determine where to apply tire forces.float
Return the tire's friction in the sideways direction.float
Return the tire's friction in the forward direction.Copy the location of the attachment point.getPtr()
Temporarily access the referencedWheelSettingsTv
.float
Return the radius of the wheel.getRtti()
Access the type information of the target.Copy the steering axis (upward direction).Copy the downward direction of the suspension.Copy the location where tire forces will be applied if the force-point option is enabled.float
Return the maximum displacement from the attachment point.float
Return the minimum displacement from the attachment point.float
Return the suspension preload length.Access the settings for the suspension spring.Copy the forward direction when steering is neutral.Copy the "up" direction when steering is neutral.float
getWidth()
Return the width of the wheel.void
saveBinaryState
(StreamOut stream) Save the settings to the specified binary stream.setEnableSuspensionForcePoint
(boolean enable) Alter where to apply tire forces.setLateralFriction
(float friction) Alter the wheel's friction in the sideways direction.setLongitudinalFriction
(float friction) Alter the wheel's friction in the forward direction.setPosition
(Vec3Arg position) Relocate the attachment point.setRadius
(float radius) Alter the radius of the wheel.setSteeringAxis
(Vec3Arg direction) Alter the steering axis (upward direction).setSuspensionDirection
(Vec3Arg direction) Alter the downward direction of the suspension.setSuspensionForcePoint
(Vec3Arg location) Alter the location where tire forces will be applied if the force-point option is enabled.setSuspensionMaxLength
(float length) Alter the maximum displacement from the attachment point.setSuspensionMinLength
(float length) Alter the minimum displacement from the attachment point.setSuspensionPreloadLength
(float length) Alter the suspension preload length.setWheelForward
(Vec3Arg direction) Alter the forward direction when steering is neutral.setWheelUp
(Vec3Arg direction) Alter the "up" direction when steering is neutral.setWidth
(float width) Alter the width of the wheel.long
targetVa()
Return the address of the nativeWheelSettingsTV
.toRef()
Create another counted reference to the nativeWheelSettingsTV
.Methods inherited from class com.github.stephengold.joltjni.JoltPhysicsObject
close, compareTo, equals, getContainingObject, hasAssignedNativeObject, hashCode, isCleanerStarted, ownsNativeObject, setVirtualAddress, setVirtualAddress, startCleaner, toString, va
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
Methods inherited from interface java.lang.Comparable
compareTo
Methods inherited from interface com.github.stephengold.joltjni.readonly.ConstJoltPhysicsObject
close, hasAssignedNativeObject, ownsNativeObject
-
Constructor Details
-
WheelSettingsTvRef
public WheelSettingsTvRef()Instantiate an empty reference.
-
-
Method Details
-
setEnableSuspensionForcePoint
Alter where to apply tire forces. (native attribute: mEnableSuspensionForcePoint)- Parameters:
enable
-true
to apply at the configured suspension-force point,false
to apply at the wheel's point of contact (default=false)- Returns:
- the current reference, for chaining
-
setLateralFriction
Alter the wheel's friction in the sideways direction. (native attribute: mLateralFriction)- Parameters:
friction
- the desired friction (default=2)- Returns:
- the current reference, for chaining
-
setLongitudinalFriction
Alter the wheel's friction in the forward direction. (native attribute: mLongitudinalFriction)- Parameters:
friction
- the desired friction (default=4)- Returns:
- the current reference, for chaining
-
setPosition
Relocate the attachment point. (native attribute: mPosition)- Parameters:
position
- the location of the attachment point (in the body's local coordinates, not null, unaffected, default=(0,0,0))- Returns:
- the current reference, for chaining
-
setRadius
Alter the radius of the wheel. (native attribute: mRadius)- Parameters:
radius
- the desired radius (in meters, default=0.3)- Returns:
- the current reference, for chaining
-
setSteeringAxis
Alter the steering axis (upward direction). (native attribute: mSteeringAxis)- Parameters:
direction
- the desired direction (not null, unaffected, default=(0,1,0))- Returns:
- the current reference, for chaining
-
setSuspensionDirection
Alter the downward direction of the suspension. (native attribute: mSuspensionDirection)- Parameters:
direction
- the desired direction (not null, unaffected, default=(0,-1,0))- Returns:
- the current reference, for chaining
-
setSuspensionForcePoint
Alter the location where tire forces will be applied if the force-point option is enabled. (native attribute: mSuspensionForcePoint)- Parameters:
location
- the desired location (in the body coordinates, not null, unaffected, default=(0,0,0))- Returns:
- the current reference, for chaining
-
setSuspensionMaxLength
Alter the maximum displacement from the attachment point. (native attribute: mSuspensionMaxLength)- Parameters:
length
- the desired limit (in meters, default=0.5)- Returns:
- the current reference, for chaining
-
setSuspensionMinLength
Alter the minimum displacement from the attachment point. (native attribute: mSuspensionMinLength)- Parameters:
length
- the desired limit (in meters, default=0.3)- Returns:
- the current reference, for chaining
-
setSuspensionPreloadLength
Alter the suspension preload length. (native attribute: mSuspensionPreloadLength)- Parameters:
length
- the desired offset (in meters, default=0)- Returns:
- the current reference, for chaining
-
setWheelForward
Alter the forward direction when steering is neutral. (native attribute: mWheelForward)- Parameters:
direction
- the desired direction (not null, unaffected, default=(0,0,1))- Returns:
- the current reference, for chaining
-
setWheelUp
Alter the "up" direction when steering is neutral. (native attribute: mWheelUp)- Parameters:
direction
- the desired direction (not null, unaffected, default=(0,1,0))- Returns:
- the current reference, for chaining
-
setWidth
Alter the width of the wheel. (native attribute: mWidth)- Parameters:
width
- the desired width (in meters, default=0.1)- Returns:
- the current reference, for chaining
-
getEnableSuspensionForcePoint
public boolean getEnableSuspensionForcePoint()Determine where to apply tire forces. The settings are unaffected. (native attribute: mEnableSuspensionForcePoint)- Specified by:
getEnableSuspensionForcePoint
in interfaceConstWheelSettings
- Returns:
true
if applied at the configured suspension-force point,false
if applied at the wheel's point of contact
-
getLateralFriction
public float getLateralFriction()Return the tire's friction in the sideways direction. The settings are unaffected. (native attribute: mLateralFriction)- Specified by:
getLateralFriction
in interfaceConstWheelSettingsTv
- Returns:
- the friction
-
getLongitudinalFriction
public float getLongitudinalFriction()Return the tire's friction in the forward direction. The settings are unaffected. (native attribute: mLongitudinalFriction)- Specified by:
getLongitudinalFriction
in interfaceConstWheelSettingsTv
- Returns:
- the friction
-
getPosition
Copy the location of the attachment point. The settings are unaffected. (native attribute: mPosition)- Specified by:
getPosition
in interfaceConstWheelSettings
- Returns:
- a new location vector (in the body's local coordinates)
-
getRadius
public float getRadius()Return the radius of the wheel. The settings are unaffected. (native attribute: mRadius)- Specified by:
getRadius
in interfaceConstWheelSettings
- Returns:
- the radius (in meters)
-
getRtti
Access the type information of the target. (native method: GetRTTI)- Specified by:
getRtti
in interfaceConstSerializableObject
- Returns:
- a new JVM object with the pre-existing native object assigned
-
getSteeringAxis
Copy the steering axis (upward direction). The settings are unaffected. (native attribute: mSteeringAxis)- Specified by:
getSteeringAxis
in interfaceConstWheelSettings
- Returns:
- a new direction vector
-
getSuspensionDirection
Copy the downward direction of the suspension. The settings are unaffected. (native attribute: mSuspensionDirection)- Specified by:
getSuspensionDirection
in interfaceConstWheelSettings
- Returns:
- a new direction vector
-
getSuspensionForcePoint
Copy the location where tire forces will be applied if the force-point option is enabled. The settings are unaffected. (native attribute: mSuspensionForcePoint)- Specified by:
getSuspensionForcePoint
in interfaceConstWheelSettings
- Returns:
- a new location vector (in body coordinates)
-
getSuspensionMaxLength
public float getSuspensionMaxLength()Return the maximum displacement from the attachment point. The settings are unaffected. (native attribute: mSuspensionMaxLength)- Specified by:
getSuspensionMaxLength
in interfaceConstWheelSettings
- Returns:
- the distance (in meters)
-
getSuspensionMinLength
public float getSuspensionMinLength()Return the minimum displacement from the attachment point. The settings are unaffected. (native attribute: mSuspensionMinLength)- Specified by:
getSuspensionMinLength
in interfaceConstWheelSettings
- Returns:
- the distance (in meters)
-
getSuspensionPreloadLength
public float getSuspensionPreloadLength()Return the suspension preload length. The settings are unaffected. (native attribute: mSuspensionPreloadLength)- Specified by:
getSuspensionPreloadLength
in interfaceConstWheelSettings
- Returns:
- the offset (in meters)
-
getSuspensionSpring
Access the settings for the suspension spring. (native attribute: mSuspensionSpring)- Specified by:
getSuspensionSpring
in interfaceConstWheelSettings
- Returns:
- a new JVM object with the pre-existing native object assigned
-
getWheelForward
Copy the forward direction when steering is neutral. The settings are unaffected. (native attribute: mWheelForward)- Specified by:
getWheelForward
in interfaceConstWheelSettings
- Returns:
- a new direction vector
-
getWheelUp
Copy the "up" direction when steering is neutral. The settings are unaffected. (native attribute: mWheelUp)- Specified by:
getWheelUp
in interfaceConstWheelSettings
- Returns:
- a new direction vector
-
getWidth
public float getWidth()Return the width of the wheel. The settings are unaffected. (native attribute: mWidth)- Specified by:
getWidth
in interfaceConstWheelSettings
- Returns:
- the width (in meters)
-
saveBinaryState
Save the settings to the specified binary stream. The settings are unaffected.- Specified by:
saveBinaryState
in interfaceConstWheelSettings
- Parameters:
stream
- the stream to write to (not null)
-
getPtr
Temporarily access the referencedWheelSettingsTv
. -
targetVa
public long targetVa()Return the address of the nativeWheelSettingsTV
. No objects are affected.- Specified by:
targetVa
in interfaceConstJoltPhysicsObject
- Overrides:
targetVa
in classJoltPhysicsObject
- Returns:
- a virtual address (not zero)
-
toRef
Create another counted reference to the nativeWheelSettingsTV
.
-