Class MotorJoint
- Namespace
- Alis.Core.Physic.Dynamics.Joints
- Assembly
- Alis.dll
A motor joint is used to control the relative motion between two bodies. A typical usage is to control the movement of a dynamic body with respect to the ground.
public class MotorJoint : JointInheritance
Inherited Members
Constructors
MotorJoint()
Initializes a new instance of the Alis.Core.Physic.Dynamics.Joints.MotorJoint class
internal MotorJoint()MotorJoint(Body, Body, bool)
Constructor for MotorJoint.
public MotorJoint(Body bodyA, Body bodyB, bool useWorldCoordinates = false)Parameters
bodyABody-
The first body
bodyBBody-
The second body
useWorldCoordinatesbool-
Set to true if you are using world coordinates as anchors.
Fields
_angularError
The angular error
private float _angularErrorField Value
_angularImpulse
The angular impulse
private float _angularImpulseField Value
_angularMass
The angular mass
private float _angularMassField Value
_angularOffset
The angular offset
private float _angularOffsetField Value
_indexA
The index
private int _indexAField Value
_indexB
The index
private int _indexBField Value
_invMassA
The inv mass
private float _invMassAField Value
_invMassB
The inv mass
private float _invMassBField Value
_linearError
The linear error
private Vector2 _linearErrorField Value
_linearImpulse
The linear impulse
private Vector2 _linearImpulseField Value
_linearMass
The linear mass
private Mat22 _linearMassField Value
_linearOffset
The linear offset
private Vector2 _linearOffsetField Value
_localCenterA
The local center
private Vector2 _localCenterAField Value
_localCenterB
The local center
private Vector2 _localCenterBField Value
_maxForce
The max force
private float _maxForceField Value
_maxTorque
The max torque
private float _maxTorqueField Value
_rA
The
private Vector2 _rAField Value
_rB
The
private Vector2 _rBField Value
invIa
The inv ia
private float invIaField Value
invIb
The inv ib
private float invIbField Value
Properties
AngularOffset
Get or set the angular offset.
public float AngularOffset { get; set; }Property Value
CorrectionFactor
Gets or sets the value of the correction factor
internal float CorrectionFactor { get; set; }Property Value
LinearOffset
The linear (translation) offset.
public Vector2 LinearOffset { get; set; }Property Value
MaxForce
The maximum amount of force that can be applied to BodyA
public float MaxForce { get; set; }Property Value
MaxTorque
The maximum amount of torque that can be applied to BodyA
public float MaxTorque { get; set; }Property Value
WorldAnchorA
Gets or sets the value of the world anchor a
public override Vector2 WorldAnchorA { get; set; }Property Value
WorldAnchorB
Gets or sets the value of the world anchor b
public override Vector2 WorldAnchorB { get; set; }Property Value
Methods
GetReactionForce(float)
Gets the reaction force using the specified inv dt
public override Vector2 GetReactionForce(float invDt)Parameters
invDtfloat-
The inv dt
Returns
- Vector2
-
The vector
GetReactionTorque(float)
Gets the reaction torque using the specified inv dt
public override float GetReactionTorque(float invDt)Parameters
invDtfloat-
The inv dt
Returns
- float
-
The float
InitVelocityConstraints(ref SolverData)
Inits the velocity constraints using the specified data
internal override void InitVelocityConstraints(ref SolverData data)Parameters
dataSolverData-
The data
SolvePositionConstraints(ref SolverData)
Describes whether this instance solve position constraints
internal override bool SolvePositionConstraints(ref SolverData data)Parameters
dataSolverData-
The data
Returns
- bool
-
The bool
SolveVelocityConstraints(ref SolverData)
Solves the velocity constraints using the specified data
internal override void SolveVelocityConstraints(ref SolverData data)Parameters
dataSolverData-
The data