.. default-domain:: cs .. highlight:: csharp .. namespace:: KRPC.Client.Services.SpaceCenter .. _csharp-api-stage: Stage ===== .. class:: Stage A single stage of a vessel. Obtain activation (burn) stages from ``Vessel.Stages`` / ``Vessel.StageAt``, and decouple stages from ``Vessel.DecoupleStages`` / ``Vessel.DecoupleStageAt``. .. note:: Delta-v, thrust, TWR, specific impulse, burn time and mass members are only available on activation stages. On decouple stages those members throw InvalidOperationException because stock delta-v data does not apply. Thrust is reported in newtons and masses in kilograms (stock values are converted from kilonewtons and tonnes). .. property:: int Number { get; } The stage number (activation stage for burn stages, decouple stage otherwise). :Game Scenes: All .. property:: System.Collections.Generic.IList Parts { get; } The parts that belong to this stage. :Game Scenes: All .. function:: Resources Resources(bool cumulative = true) Returns a :meth:`Stage.Resources` object for this stage. :parameters: * **cumulative** -- When ``false``, only resources assigned to this stage. When ``true``, resources for this stage and all later activation or decouple stage numbers are included. On activation stages, unstaged resource containers (for example fuel tanks) are grouped with the first higher activation stage before they are detached. :Game Scenes: All .. note:: This is an RPC method: call ``resources()`` (optional ``cumulative`` argument). For activation stages, unstaged resource containers (for example fuel tanks) are grouped with the first higher activation stage before they detach, matching the C# ``Resources()`` documentation. .. property:: float DeltaV { get; } Delta-v for this stage in the current situation, in m/s. :Game Scenes: All .. note:: Delta-v is only defined for **activation** stages (``decouple`` is ``false``). Calling this on a decouple stage raises an error. .. property:: float VacuumDeltaV { get; } Vacuum delta-v for this stage, in m/s. :Game Scenes: All .. property:: float SeaLevelDeltaV { get; } Sea-level delta-v for this stage, in m/s. :Game Scenes: All .. property:: float Thrust { get; } Thrust in the current situation, in newtons. :Game Scenes: All .. property:: float VacuumThrust { get; } Vacuum thrust, in newtons. :Game Scenes: All .. property:: float SeaLevelThrust { get; } Sea-level thrust, in newtons. :Game Scenes: All .. property:: float TWR { get; } Thrust-to-weight ratio in the current situation. :Game Scenes: All .. property:: float VacuumTWR { get; } Vacuum thrust-to-weight ratio. :Game Scenes: All .. property:: float SeaLevelTWR { get; } Sea-level thrust-to-weight ratio. :Game Scenes: All .. property:: float SpecificImpulse { get; } Specific impulse in the current situation, in seconds. :Game Scenes: All .. property:: float VacuumSpecificImpulse { get; } Vacuum specific impulse, in seconds. :Game Scenes: All .. property:: float SeaLevelSpecificImpulse { get; } Sea-level specific impulse, in seconds. :Game Scenes: All .. property:: float BurnTime { get; } Burn time for this stage, in seconds. :Game Scenes: All .. property:: float StartMass { get; } The mass of the vessel after the stage activates, in kg. :Game Scenes: All .. property:: float EndMass { get; } The mass of the vessel when the stage burns out, in kg. :Game Scenes: All .. property:: float DryMass { get; } The dry mass of the vessel after the stage activates, in kg. :Game Scenes: All .. note:: Includes the parts of all later stages. .. property:: float FuelMass { get; } The fuel mass of the vessel when the stage activates, in kg. :Game Scenes: All .. note:: Includes the fuel of all later stages, and the fuel left in the parts the stage decouples. The stage burns :prop:`Stage.StartMass` minus :prop:`Stage.EndMass`.