diff --git a/core/resources/l10n/messages.properties b/core/resources/l10n/messages.properties index 852f5e178..e7ba5f01c 100644 --- a/core/resources/l10n/messages.properties +++ b/core/resources/l10n/messages.properties @@ -454,6 +454,11 @@ SimuRunDlg.lbl.Velocity = Velocity: SimuRunDlg.msg.Unabletosim = Unable to simulate: SimuRunDlg.msg.errorOccurred = An error occurred during the simulation: +BasicEventSimulationEngine.error.noMotorsDefined = No motors defined in the simulation. +BasicEventSimulationEngine.error.earlyMotorBurnout = Motor burnout without liftoff. +BasicEventSimulationEngine.error.noIgnition = No motors ignited. +BasicEventSimulationEngine.error.NaNResult = Simulation resulted in not-a-number (NaN) value, please report a bug. + RK4SimulationStepper.error.valuesTooLarge = Simulation values exceeded limits. Try selecting a shorter time step. diff --git a/core/resources/l10n/messages_ru.properties b/core/resources/l10n/messages_ru.properties index dc119c2e0..8e3ed1787 100644 --- a/core/resources/l10n/messages_ru.properties +++ b/core/resources/l10n/messages_ru.properties @@ -454,6 +454,11 @@ SimuRunDlg.lbl.Velocity = \u0421\u043a\u043e\u0440\u043e\u0441\u0442\u044c: SimuRunDlg.msg.Unabletosim = \u0420\u0430\u0441\u0447\u0435\u0442 \u043d\u0435\u0432\u043e\u0437\u043c\u043e\u0436\u0435\u043d: SimuRunDlg.msg.errorOccurred = \u0412 \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u0435 \u0440\u0430\u0441\u0447\u0435\u0442\u0430 \u043f\u0440\u043e\u0438\u0437\u043e\u0448\u043b\u0430 \u043e\u0448\u0438\u0431\u043a\u0430: +BasicEventSimulationEngine.error.noMotorsDefined = \u0414\u043b\u044f \u0440\u0430\u0441\u0447\u0435\u0442\u0430 \u043d\u0435 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u044b \u0434\u0432\u0438\u0433\u0430\u0442\u0435\u043b\u0438. +BasicEventSimulationEngine.error.earlyMotorBurnout = \u0412\u044b\u0433\u043e\u0440\u0430\u043d\u0438\u0435 \u0434\u0432\u0438\u0433\u0430\u0442\u0435\u043b\u044f \u0431\u0435\u0437 \u043e\u0442\u0440\u044b\u0432\u0430 \u0440\u0430\u043a\u0435\u0442\u044b \u043e\u0442 \u0437\u0435\u043c\u043b\u0438. +BasicEventSimulationEngine.error.noIgnition = \u041d\u0438 \u043d\u0430 \u043e\u0434\u043d\u043e\u043c \u0434\u0432\u0438\u0433\u0430\u0442\u0435\u043b\u0435 \u043d\u0435 \u043f\u0440\u043e\u0438\u0437\u043e\u0448\u043b\u043e \u0437\u0430\u0436\u0438\u0433\u0430\u043d\u0438\u0435. +BasicEventSimulationEngine.error.NaNResult = \u0420\u0430\u0441\u0447\u0435\u0442 \u0432\u0435\u0440\u043d\u0443\u043b \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435, \u043d\u0435 \u044f\u0432\u043b\u044f\u044e\u0449\u0435\u0435\u0441\u044f \u0447\u0438\u0441\u043b\u043e\u043c (NaN). \u041f\u043e\u0436\u0430\u043b\u0443\u0439\u0441\u0442\u0430, \u043e\u0442\u043f\u0440\u0430\u0432\u044c\u0442\u0435 \u043e\u0442\u0447\u0435\u0442 \u043e\u0431 \u043e\u0448\u0438\u0431\u043a\u0435. + RK4SimulationStepper.error.valuesTooLarge = \u0417\u043d\u0430\u0447\u0435\u043d\u0438\u044f \u0432 \u0440\u0430\u0441\u0447\u0435\u0442\u0430\u0445 \u043f\u0440\u0435\u0432\u044b\u0441\u0438\u043b\u0438 \u0433\u0440\u0430\u043d\u0438\u0446\u044b. \u041f\u043e\u043f\u0440\u043e\u0431\u0443\u0439\u0442\u0435 \u0432\u044b\u0431\u0440\u0430\u0442\u044c \u0431\u043e\u043b\u0435\u0435 \u043a\u043e\u0440\u043e\u0442\u043a\u0438\u0439 \u0432\u0440\u0435\u043c\u0435\u043d\u043d\u043e\u0439 \u0448\u0430\u0433. diff --git a/core/src/net/sf/openrocket/simulation/BasicEventSimulationEngine.java b/core/src/net/sf/openrocket/simulation/BasicEventSimulationEngine.java index 1e7a395e3..22f7bcbb1 100644 --- a/core/src/net/sf/openrocket/simulation/BasicEventSimulationEngine.java +++ b/core/src/net/sf/openrocket/simulation/BasicEventSimulationEngine.java @@ -66,7 +66,7 @@ public class BasicEventSimulationEngine implements SimulationEngine { flightConfigurationId = configuration.getFlightConfigurationID(); MotorInstanceConfiguration motorConfiguration = setupMotorConfiguration(configuration); if (motorConfiguration.getMotorIDs().isEmpty()) { - throw new MotorIgnitionException("No motors defined in the simulation."); + throw new MotorIgnitionException(trans.get("BasicEventSimulationEngine.error.noMotorsDefined")); } status = new SimulationStatus(configuration, motorConfiguration, simulationConditions); @@ -403,7 +403,7 @@ public class BasicEventSimulationEngine implements SimulationEngine { case BURNOUT: { // If motor burnout occurs without lift-off, abort if (!status.isLiftoff()) { - throw new SimulationLaunchException("Motor burnout without liftoff."); + throw new SimulationLaunchException(trans.get("BasicEventSimulationEngine.error.earlyMotorBurnout")); } // Add ejection charge event MotorId motorId = (MotorId) event.getData(); @@ -514,7 +514,7 @@ public class BasicEventSimulationEngine implements SimulationEngine { // If no motor has ignited, abort if (!status.isMotorIgnited()) { - throw new MotorIgnitionException("No motors ignited."); + throw new MotorIgnitionException(trans.get("BasicEventSimulationEngine.error.noIgnition")); } return ret; @@ -579,7 +579,7 @@ public class BasicEventSimulationEngine implements SimulationEngine { " rocketOrientationQuaternion=" + status.getRocketOrientationQuaternion() + " rocketRotationVelocity=" + status.getRocketRotationVelocity() + " effectiveLaunchRodLength=" + status.getEffectiveLaunchRodLength()); - throw new SimulationException("Simulation resulted in not-a-number (NaN) value, please report a bug."); + throw new SimulationException(trans.get("BasicEventSimulationEngine.error.NaNResult")); } }