public InitializeOverallEngineData ( double nMinFlow, double nMaxFlow, FloatCurve nAtmosphereCurve, FloatCurve nAtmCurve, FloatCurve nVelCurve, FloatCurve nAtmCurveIsp, FloatCurve nVelCurveIsp, bool nDisableUnderwater, double nThrottleResponseRate, double nChamberNominalTemp, double nMachLimit, double nMachMult, double nFlowMultMin, double nFlowMultCap, double nFlowMultSharp, double nVaryThrust, float nSeed ) : void | ||
nMinFlow | double | |
nMaxFlow | double | |
nAtmosphereCurve | FloatCurve | |
nAtmCurve | FloatCurve | |
nVelCurve | FloatCurve | |
nAtmCurveIsp | FloatCurve | |
nVelCurveIsp | FloatCurve | |
nDisableUnderwater | bool | |
nThrottleResponseRate | double | |
nChamberNominalTemp | double | |
nMachLimit | double | |
nMachMult | double | |
nFlowMultMin | double | |
nFlowMultCap | double | |
nFlowMultSharp | double | |
nVaryThrust | double | |
nSeed | float | |
리턴 | void |
public override void CreateEngine() { rfSolver = new SolverRF(); if(!useAtmCurve) atmCurve = null; if(!useVelCurve) velCurve = null; if (!useThrustCurve) thrustCurve = null; // FIXME quick temp hax if (useAtmCurve) { if (maxEngineTemp == 0d) maxEngineTemp = 2000d; if (chamberNominalTemp == 0d) chamberNominalTemp = 950d; } else { if (maxEngineTemp == 0d) maxEngineTemp = 3600d; if (chamberNominalTemp == 0d) chamberNominalTemp = 3400d; if (tempGaugeMin == 0.8d) tempGaugeMin = 0.95d; } double thrustVariation = varyThrust * RFSettings.Instance.varyThrust; chamberNominalTemp *= (1d - thrustVariation); rfSolver.InitializeOverallEngineData( minFuelFlow, maxFuelFlow, atmosphereCurve, atmCurve, velCurve, throttleResponseRate, chamberNominalTemp, machLimit, machHeatMult, flowMultMin, flowMultCap, flowMultCapSharpness, multFlow, thrustVariation, (float)part.name.GetHashCode()); rfSolver.SetScale(scale); engineSolver = rfSolver; }
public override void CreateEngine() { rfSolver = new SolverRF(); if (!useAtmCurve) { atmCurve = null; } if (!useVelCurve) { velCurve = null; } // FIXME quick temp hax if (useAtmCurve) { if (maxEngineTemp == 0d) { maxEngineTemp = 2000d; } if (chamberNominalTemp == 0d) { chamberNominalTemp = 950d; } } else { if (maxEngineTemp == 0d) { maxEngineTemp = 3600d; } if (chamberNominalTemp == 0d) { chamberNominalTemp = 3400d; } if (tempGaugeMin == 0.8d) { tempGaugeMin = 0.95d; } } double thrustVariation = varyThrust * RFSettings.Instance.varyThrust; chamberNominalTemp *= (1d - thrustVariation); rfSolver.InitializeOverallEngineData( minFuelFlow, maxFuelFlow, atmosphereCurve, useAtmCurve ? atmCurve : null, useVelCurve ? velCurve : null, useAtmCurveIsp ? atmCurveIsp : null, useVelCurveIsp ? velCurveIsp : null, disableUnderwater, throttleResponseRate, chamberNominalTemp, machLimit, machHeatMult, flowMultMin, flowMultCap, flowMultCapSharpness, thrustVariation, (float)part.name.GetHashCode()); rfSolver.SetScale(scale); engineSolver = rfSolver; }
protected bool started = false; // Track start state, don't handle MEC notification before first start. #endregion #region Overrides public override void CreateEngine() { rfSolver = new SolverRF(); if (!useAtmCurve) { atmCurve = null; } if (!useVelCurve) { velCurve = null; } // FIXME quick temp hax if (useAtmCurve) { if (maxEngineTemp == 0d) { maxEngineTemp = 2000d; } if (chamberNominalTemp == 0d) { chamberNominalTemp = 950d; } } else { if (maxEngineTemp == 0d) { maxEngineTemp = 3600d; } if (chamberNominalTemp == 0d) { chamberNominalTemp = 3400d; } if (tempGaugeMin == 0.8d) { tempGaugeMin = 0.95d; } } double totalVariation = (1d + localVaryFlow) * (1d + localVaryIsp) - 1d; chamberNominalTemp *= (1d - totalVariation); rfSolver.InitializeOverallEngineData( minFuelFlow, maxFuelFlow, atmosphereCurve, useAtmCurve ? atmCurve : null, useVelCurve ? velCurve : null, useAtmCurveIsp ? atmCurveIsp : null, useVelCurveIsp ? velCurveIsp : null, disableUnderwater, throttleResponseRate, chamberNominalTemp, machLimit, machHeatMult, flowMultMin, flowMultCap, flowMultCapSharpness, localVaryFlow, localVaryIsp, localVaryMixture, isSolid, partSeed); rfSolver.SetScale(scale); engineSolver = rfSolver; }