Interface IHingeJoint3D
Interface for a Hinge 3D joint physics.
Inherited Members
Namespace: Evergine.Framework.Physics3D
Assembly: Evergine.Framework.dll
Syntax
public interface IHingeJoint3D : IJoint3D, IDisposable
Properties
AFrame
Gets the Reference frame on Body A.
Declaration
Matrix4x4 AFrame { get; }
Property Value
Type | Description |
---|---|
Matrix4x4 |
AngularOnly
Gets or sets a value indicating whether only affects angular movement to the joint.
Declaration
bool AngularOnly { get; set; }
Property Value
Type | Description |
---|---|
bool |
BFrame
Gets the Reference frame on Body B.
Declaration
Matrix4x4 BFrame { get; }
Property Value
Type | Description |
---|---|
Matrix4x4 |
EnableMotor
Gets or sets a value indicating whether the motor is enabled.
Declaration
bool EnableMotor { get; set; }
Property Value
Type | Description |
---|---|
bool |
Flags
Gets the hinge flags.
Declaration
int Flags { get; }
Property Value
Type | Description |
---|---|
int |
FrameOffsetA
Gets the frame offset for body A.
Declaration
Matrix4x4 FrameOffsetA { get; }
Property Value
Type | Description |
---|---|
Matrix4x4 |
FrameOffsetB
Gets the frame offset for body B.
Declaration
Matrix4x4 FrameOffsetB { get; }
Property Value
Type | Description |
---|---|
Matrix4x4 |
HasLimit
Gets a value indicating whether this joint has limits.
Declaration
bool HasLimit { get; }
Property Value
Type | Description |
---|---|
bool |
HingeAngle
Gets the angle of the joint.
Declaration
float HingeAngle { get; }
Property Value
Type | Description |
---|---|
float |
LimitBiasFactor
Gets the Limit bias factor.
Declaration
float LimitBiasFactor { get; }
Property Value
Type | Description |
---|---|
float |
LimitRelaxationFactor
Gets the limit relaxation factor.
Declaration
float LimitRelaxationFactor { get; }
Property Value
Type | Description |
---|---|
float |
LimitSign
Gets the limit sign.
Declaration
float LimitSign { get; }
Property Value
Type | Description |
---|---|
float |
LimitSoftness
Gets the limit softness.
Declaration
float LimitSoftness { get; }
Property Value
Type | Description |
---|---|
float |
LowerLimit
Gets the lower limit.
Declaration
float LowerLimit { get; }
Property Value
Type | Description |
---|---|
float |
MaxMotorImpulse
Gets or sets and sets maximum motor impulse.
Declaration
float MaxMotorImpulse { get; set; }
Property Value
Type | Description |
---|---|
float |
MotorTargetVelocity
Gets the max motor target velocity.
Declaration
float MotorTargetVelocity { get; }
Property Value
Type | Description |
---|---|
float |
SolveLimit
Gets the solve limit.
Declaration
int SolveLimit { get; }
Property Value
Type | Description |
---|---|
int |
UpperLimit
Gets the upper limit.
Declaration
float UpperLimit { get; }
Property Value
Type | Description |
---|---|
float |
UseFrameOffset
Gets or sets a value indicating whether the frame offsets are enabled.
Declaration
bool UseFrameOffset { get; set; }
Property Value
Type | Description |
---|---|
bool |
UseReferenceFrameA
Gets or sets a value indicating whether the joint use A as a Frame reference.
Declaration
bool UseReferenceFrameA { get; set; }
Property Value
Type | Description |
---|---|
bool |
Methods
EnableAngularMotor(bool, float, float)
Enable angular motor.
Declaration
void EnableAngularMotor(bool motorEnabled, float targetVelocity, float maxMotorImpulse)
Parameters
Type | Name | Description |
---|---|---|
bool | motorEnabled | Motor enabled. |
float | targetVelocity | Target velocity. |
float | maxMotorImpulse | Max motor impulse. |
SetAxis(Vector3)
Set axis.
Declaration
void SetAxis(Vector3 axis)
Parameters
Type | Name | Description |
---|---|---|
Vector3 | axis | The axis. |
SetFrames(Matrix4x4, Matrix4x4)
Set frames.
Declaration
void SetFrames(Matrix4x4 frameA, Matrix4x4 frameB)
Parameters
Type | Name | Description |
---|---|---|
Matrix4x4 | frameA | The frame A. |
Matrix4x4 | frameB | The frame B. |
SetLimit(float, float, float, float, float)
Set limits.
Declaration
void SetLimit(float low, float high, float softness = 0.9, float biasFactor = 0.3, float relaxationFactor = 1)
Parameters
Type | Name | Description |
---|---|---|
float | low | The low limit. |
float | high | The high limit. |
float | softness | How much the hinge rotates for a given force. |
float | biasFactor | offset for the relaxed rotation of the hinge. |
float | relaxationFactor | How much force is applied internally to bring the hinge in its central rotation. |
SetMotorTarget(Quaternion, float)
Set motor target.
Declaration
void SetMotorTarget(Quaternion qAinB, float deltaTime)
Parameters
Type | Name | Description |
---|---|---|
Quaternion | qAinB | Quaternion of A in B. |
float | deltaTime | The delta time. |
SetMotorTarget(float, float)
Set motor target.
Declaration
void SetMotorTarget(float targetAngle, float deltaTime)
Parameters
Type | Name | Description |
---|---|---|
float | targetAngle | The target angle. |
float | deltaTime | The delta time. |