Box3D
Safe HaskellNone
LanguageGHC2021

Box3D.SphericalJoint

Synopsis

Documentation

create :: WorldId -> SphericalJointDef -> IO JointId Source #

Create a spherical joint See also b3SphericalJointDef for details.

Binds b3CreateSphericalJoint.

enableConeLimit Source #

Arguments

:: JointId 
-> Bool
enableLimit
-> IO () 

Enable/disable the spherical joint cone limit

Binds b3SphericalJoint_EnableConeLimit.

isConeLimitEnabled :: JointId -> IO Bool Source #

Is the spherical joint cone limit enabled?

Binds b3SphericalJoint_IsConeLimitEnabled.

getConeLimit :: JointId -> IO Float Source #

Get the spherical joint cone limit in radians

Binds b3SphericalJoint_GetConeLimit.

setConeLimit Source #

Arguments

:: JointId 
-> Float
angleRadians
-> IO () 

Set the spherical joint limits in radians

Binds b3SphericalJoint_SetConeLimit.

getConeAngle :: JointId -> IO Float Source #

Get the spherical joint current cone angle in radians.

Binds b3SphericalJoint_GetConeAngle.

enableTwistLimit Source #

Arguments

:: JointId 
-> Bool
enableLimit
-> IO () 

Enable/disable the spherical joint limit

Binds b3SphericalJoint_EnableTwistLimit.

isTwistLimitEnabled :: JointId -> IO Bool Source #

Is the spherical joint limit enabled?

Binds b3SphericalJoint_IsTwistLimitEnabled.

getLowerTwistLimit :: JointId -> IO Float Source #

Get the spherical joint lower limit in radians

Binds b3SphericalJoint_GetLowerTwistLimit.

getUpperTwistLimit :: JointId -> IO Float Source #

Get the spherical joint upper limit in radians

Binds b3SphericalJoint_GetUpperTwistLimit.

setTwistLimits Source #

Arguments

:: JointId 
-> Float
lowerLimitRadians
-> Float
upperLimitRadians
-> IO () 

Set the spherical joint limits in radians

Binds b3SphericalJoint_SetTwistLimits.

getTwistAngle :: JointId -> IO Float Source #

Get the spherical joint current twist angle in radians.

Binds b3SphericalJoint_GetTwistAngle.

enableSpring Source #

Arguments

:: JointId 
-> Bool
enableSpring
-> IO () 

Enable/disable the spherical joint spring

Binds b3SphericalJoint_EnableSpring.

isSpringEnabled :: JointId -> IO Bool Source #

Is the spherical angular spring enabled?

Binds b3SphericalJoint_IsSpringEnabled.

setSpringHertz Source #

Arguments

:: JointId 
-> Float
hertz
-> IO () 

Set the spherical joint spring stiffness in Hertz

Binds b3SphericalJoint_SetSpringHertz.

getSpringHertz :: JointId -> IO Float Source #

Get the spherical joint spring stiffness in Hertz

Binds b3SphericalJoint_GetSpringHertz.

setSpringDampingRatio Source #

Arguments

:: JointId 
-> Float
dampingRatio
-> IO () 

Set the spherical joint spring damping ratio, non-dimensional

Binds b3SphericalJoint_SetSpringDampingRatio.

getSpringDampingRatio :: JointId -> IO Float Source #

Get the spherical joint spring damping ratio, non-dimensional

Binds b3SphericalJoint_GetSpringDampingRatio.

setTargetRotation Source #

Arguments

:: JointId 
-> Quat
targetRotation
-> IO () 

Set the spherical joint spring target rotation

Binds b3SphericalJoint_SetTargetRotation.

getTargetRotation :: JointId -> IO Quat Source #

Get the spherical joint spring target rotation

Binds b3SphericalJoint_GetTargetRotation.

getTargetRotationInto Source #

Arguments

:: JointId 
-> Ptr Quat

Result buffer.

-> IO () 

Like getTargetRotation, but the result is written into a caller-supplied buffer.

enableMotor Source #

Arguments

:: JointId 
-> Bool
enableMotor
-> IO () 

Enable/disable a spherical joint motor

Binds b3SphericalJoint_EnableMotor.

isMotorEnabled :: JointId -> IO Bool Source #

Is the spherical joint motor enabled?

Binds b3SphericalJoint_IsMotorEnabled.

setMotorVelocity Source #

Arguments

:: JointId 
-> Vec3
motorVelocity
-> IO () 

Set the spherical joint motor velocity in radians per second

Binds b3SphericalJoint_SetMotorVelocity.

getMotorVelocity :: JointId -> IO Vec3 Source #

Get the spherical joint motor velocity in radians per second

Binds b3SphericalJoint_GetMotorVelocity.

getMotorVelocityInto Source #

Arguments

:: JointId 
-> Ptr Vec3

Result buffer.

-> IO () 

Like getMotorVelocity, but the result is written into a caller-supplied buffer.

getMotorTorque :: JointId -> IO Vec3 Source #

Get the spherical joint current motor torque, usually in newton-meters

Binds b3SphericalJoint_GetMotorTorque.

getMotorTorqueInto Source #

Arguments

:: JointId 
-> Ptr Vec3

Result buffer.

-> IO () 

Like getMotorTorque, but the result is written into a caller-supplied buffer.

setMaxMotorTorque Source #

Arguments

:: JointId 
-> Float
torque
-> IO () 

Set the spherical joint maximum motor torque, usually in newton-meters

Binds b3SphericalJoint_SetMaxMotorTorque.

getMaxMotorTorque :: JointId -> IO Float Source #

Get the spherical joint maximum motor torque, usually in newton-meters

Binds b3SphericalJoint_GetMaxMotorTorque.