Class RigidbodyComponent
- Namespace
- KSP.Sim.impl
- Assembly
- Assembly-CSharp.dll
public class RigidbodyComponent : ObjectComponent, IGuidIdentity, IRigidbodyDriver, IPositionDriver, IRotationDriver, ILinearMotionDriver, IAngularMotionDriver
- Inheritance
-
RigidbodyComponent
- Implements
-
- Inherited Members
-
- Extension Methods
-
Constructors
RigidbodyComponent()
public RigidbodyComponent()
RigidbodyComponent(UniverseModel, PartPhysicsModes)
public RigidbodyComponent(UniverseModel universeModel, PartPhysicsModes physicsMode = PartPhysicsModes.Full)
Parameters
universeModel UniverseModel
physicsMode PartPhysicsModes
Fields
trackPhysXPositionDriver
public bool trackPhysXPositionDriver
Field Value
- bool
Properties
AngularVelocity
public AngularVelocity AngularVelocity { get; }
Property Value
- AngularVelocity
CanAcceptPositionUpdate
public bool CanAcceptPositionUpdate { get; }
Property Value
- bool
CanAcceptRotationUpdate
public bool CanAcceptRotationUpdate { get; }
Property Value
- bool
DefinitionType
[TypeConverterIgnore]
public override Type DefinitionType { get; }
Property Value
- Type
Forces
public List<IForce> Forces { get; }
Property Value
- List<IForce>
PendingImpulses
public List<RigidbodyComponent.Impulse> PendingImpulses { get; }
Property Value
- List<RigidbodyComponent.Impulse>
PhysXBodyDriver
public IRigidbodyDriver PhysXBodyDriver { get; set; }
Property Value
- IRigidbodyDriver
PhysicsMode
public PartPhysicsModes PhysicsMode { get; }
Property Value
- PartPhysicsModes
Position
public Position Position { get; }
Property Value
- Position
Rotation
public Rotation Rotation { get; }
Property Value
- Rotation
SingleFrameForces
public List<IForce> SingleFrameForces { get; }
Property Value
- List<IForce>
StartingLocalPosition
public Vector3d StartingLocalPosition { get; }
Property Value
- Vector3d
StartingLocalRotation
public QuaternionD StartingLocalRotation { get; }
Property Value
- QuaternionD
StateType
[TypeConverterIgnore]
public override Type StateType { get; }
Property Value
- Type
Torques
public List<ITorque> Torques { get; }
Property Value
- List<ITorque>
TrackPhysXPositionDriver
public bool TrackPhysXPositionDriver { get; set; }
Property Value
- bool
Type
[TypeConverterIgnore]
public override Type Type { get; }
Property Value
- Type
Velocity
public Velocity Velocity { get; }
Property Value
- Velocity
ViewObjectComponentType
[TypeConverterIgnore]
public override Type ViewObjectComponentType { get; }
Property Value
- Type
angularDrag
public double angularDrag { get; set; }
Property Value
- double
centerOfMass
public Position centerOfMass { get; set; }
Property Value
- Position
coordinateSystem
public ICoordinateSystem coordinateSystem { get; }
Property Value
- ICoordinateSystem
drag
public double drag { get; set; }
Property Value
- double
inertiaTensor
public Vector inertiaTensor { get; set; }
Property Value
- Vector
inertiaTensorRotation
public Rotation inertiaTensorRotation { get; set; }
Property Value
- Rotation
localPosition
public Vector3d localPosition { get; }
Property Value
- Vector3d
localRotation
public QuaternionD localRotation { get; }
Property Value
- QuaternionD
mass
public float mass { get; set; }
Property Value
- float
physicsOwner
public IPhysicsOwner physicsOwner { get; set; }
Property Value
- IPhysicsOwner
relativeAngularVelocity
public Vector relativeAngularVelocity { get; set; }
Property Value
- Vector
relativeToMotion
public IMotion relativeToMotion { get; }
Property Value
- IMotion
relativeVelocity
public Vector relativeVelocity { get; }
Property Value
- Vector
Methods
AddForce(IForce)
public void AddForce(IForce force)
Parameters
force IForce
AddSingleFrameForce(IForce)
public void AddSingleFrameForce(IForce singleFrameForce)
Parameters
singleFrameForce IForce
AddTorque(ITorque)
public void AddTorque(ITorque torque)
Parameters
torque ITorque
ApplyImpulse(ForceType, Vector3d, Vector3d)
public void ApplyImpulse(ForceType forceType, Vector3d relativeImpulse, Vector3d relativePosition)
Parameters
forceType ForceType
relativeImpulse Vector3d
relativePosition Vector3d
ClearPendingImpulses()
public void ClearPendingImpulses()
ClearSingleFrameForces()
public void ClearSingleFrameForces()
GetDefinition()
public override object GetDefinition()
Returns
- object
GetState()
public override object GetState()
Returns
- object
IsUnderAcceleration()
public bool IsUnderAcceleration()
Returns
- bool
KillAngularVelocity()
public void KillAngularVelocity()
KillVelocity()
public void KillVelocity()
OnFixedUpdate(double, double)
public override void OnFixedUpdate(double universalTime, double deltaUniversalTime)
Parameters
universalTime double
deltaUniversalTime double
OnStart(double)
public override void OnStart(double universalTime)
Parameters
universalTime double
RecordStartingLocalPositionAndRotation()
public void RecordStartingLocalPositionAndRotation()
RemoveForce(IForce)
public bool RemoveForce(IForce force)
Parameters
force IForce
Returns
- bool
RemoveSingleFrameForce(IForce)
public bool RemoveSingleFrameForce(IForce singleFrameForce)
Parameters
singleFrameForce IForce
Returns
- bool
RemoveTorque(ITorque)
public void RemoveTorque(ITorque torque)
Parameters
torque ITorque
SetState(object, ISimulationModelMap)
public override object SetState(object stateData, ISimulationModelMap simulationModelMap)
Parameters
stateData object
simulationModelMap ISimulationModelMap
Returns
- object
UpdateAngularVelocity(AngularVelocity)
public void UpdateAngularVelocity(AngularVelocity newAngularVelocity)
Parameters
newAngularVelocity AngularVelocity
UpdatePosition(Position)
public void UpdatePosition(Position newPosition)
Parameters
newPosition Position
UpdateRotation(Rotation)
public void UpdateRotation(Rotation newRotation)
Parameters
newRotation Rotation
UpdateVelocity(Velocity)
public void UpdateVelocity(Velocity newVelocity)
Parameters
newVelocity Velocity
ValidateState(object, ISimulationModelMap)
public override bool ValidateState(object stateData, ISimulationModelMap simulationModelMap)
Parameters
stateData object
simulationModelMap ISimulationModelMap
Returns
- bool
Events
AngularVelocityUpdated
public event Action<AngularVelocity> AngularVelocityUpdated
Event Type
- Action<AngularVelocity>
PositionUpdated
public event Action<Position> PositionUpdated
Event Type
- Action<Position>
RotationUpdated
public event Action<Rotation> RotationUpdated
Event Type
- Action<Rotation>
VelocityUpdated
public event Action<Velocity> VelocityUpdated
Event Type
- Action<Velocity>