diff --git a/VECTO/GUI/VectoJobForm.vb b/VECTO/GUI/VectoJobForm.vb index f07c27ac2646b0c6b025107168b3742b63042126..cde59fb57b8f2c5a5711f8e6b71fe63bfaffa420 100644 --- a/VECTO/GUI/VectoJobForm.vb +++ b/VECTO/GUI/VectoJobForm.vb @@ -252,6 +252,7 @@ Public Class VectoJobForm 'Thus Veh-file is returned VehicleForm.JobDir = GetPath(VectoFile) VehicleForm.AutoSendTo = True + VehicleForm.VehicleType = JobType If Not Trim(f) = "" Then If Not File.Exists(f) Then diff --git a/VECTO/GUI/VehicleAxleDialog.vb b/VECTO/GUI/VehicleAxleDialog.vb index 67f43f84530b0cf3d8f451497d5328beb9d06106..acc39f15ad5cf08fdb49ce4652a61d8c525167f2 100644 --- a/VECTO/GUI/VehicleAxleDialog.vb +++ b/VECTO/GUI/VehicleAxleDialog.vb @@ -65,7 +65,8 @@ Public Class VehicleAxleDialog .TyreTestLoad = TbFzISO.Text.ToDouble(0).SI(Of Newton)(), .TwinTyres = CbTwinT.Checked, .WheelsDimension = If(IsNothing(CbWheels.SelectedItem), "", CbWheels.SelectedItem.ToString()), - .Inertia = TbI_wheels.Text.ToDouble(0).SI(Of KilogramSquareMeter)() + .Inertia = TbI_wheels.Text.ToDouble(0).SI(Of KilogramSquareMeter)(), + .AxleType = CType(if(IsNothing(cbAxleType.SelectedValue), AxleType.VehicleNonDriven, cbAxleType.SelectedValue), AxleType) } Dim results As IList(Of ValidationResult) = diff --git a/VECTO/GUI/VehicleForm.vb b/VECTO/GUI/VehicleForm.vb index 04bc1fb597359d37259b8fc843cce9e7e9704212..ffd7770a3f9594cc437e0d443ef5b574686b6670 100644 --- a/VECTO/GUI/VehicleForm.vb +++ b/VECTO/GUI/VehicleForm.vb @@ -50,7 +50,7 @@ Public Class VehicleForm Public AutoSendTo As Boolean = False Public JobDir As String = "" Private _torqueLimitDlog As VehicleTorqueLimitDialog - Private VehicleType As VectoSimulationJobType + Friend VehicleType As VectoSimulationJobType 'Close - Check for unsaved changes Private Sub VehicleFormClosing(sender As Object, e As FormClosingEventArgs) Handles Me.FormClosing @@ -356,6 +356,8 @@ Public Class VehicleForm Text = "VEH Editor" LbStatus.Text = "" + UpdateForm(VehicleType) + _changed = False End Sub @@ -596,7 +598,7 @@ Public Class VehicleForm If (VehicleType = VectoSimulationJobType.ParallelHybridVehicle OrElse VehicleType = VectoSimulationJobType.BatteryElectricVehicle) Then veh.BatteryFile.Init(GetPath(file), tbBattery.Text) - veh.NumBatteryPacks = tbBatteryPackCnt.Text.ToInt() + veh.NumBatteryPacks = tbBatteryPackCnt.Text.ToInt(0) veh.InitialSOC = tbInitialSoC.Text.ToDouble() / 100.0 veh.ElectricMotorFile.Init(GetPath(file), tbElectricMotor.Text) @@ -793,7 +795,7 @@ Public Class VehicleForm If _axlDlog.ShowDialog = DialogResult.OK Then LvRRC.Items.Add(CreateListViewItem(LvRRC.Items.Count + 1, _axlDlog.TbAxleShare.Text.ToDouble(0), _axlDlog.CbTwinT.Checked, _axlDlog.TbRRC.Text.ToDouble(0), _axlDlog.TbFzISO.Text.ToDouble(0), - _axlDlog.CbWheels.Text, _axlDlog.TbI_wheels.Text.ToDouble(0), AxleType.VehicleNonDriven)) + _axlDlog.CbWheels.Text, _axlDlog.TbI_wheels.Text.ToDouble(0), CType(_axlDlog.cbAxleType.SelectedValue, AxleType))) Change() DeclInit() @@ -1042,14 +1044,14 @@ Public Class VehicleForm Private Sub btnBrowseElectricMotor_Click(sender As Object, e As EventArgs) Handles btnBrowseElectricMotor.Click If ElectricMotorFileBrowser.OpenDialog(FileRepl(tbElectricMotor.Text, GetPath(_vehFile))) Then - tbElectricMotor.Text = GetFilenameWithoutDirectory(VehicleFileBrowser.Files(0), GetPath(_vehFile)) + tbElectricMotor.Text = GetFilenameWithoutDirectory(ElectricMotorFileBrowser.Files(0), GetPath(_vehFile)) End If End Sub Private Sub btnBrowseBattery_Click(sender As Object, e As EventArgs) Handles btnBrowseBattery.Click If BatteryFileBrowser.OpenDialog(FileRepl(tbBattery.Text, GetPath(_vehFile))) Then - tbBattery.Text = GetFilenameWithoutDirectory(VehicleFileBrowser.Files(0), GetPath(_vehFile)) + tbBattery.Text = GetFilenameWithoutDirectory(BatteryFileBrowser.Files(0), GetPath(_vehFile)) End If End Sub diff --git a/VectoCore/VectoCore/OutputData/FileIO/JSONFileWriter.cs b/VectoCore/VectoCore/OutputData/FileIO/JSONFileWriter.cs index 50554095aff81b20c19830dccd28d8240ccd72d7..373b7924b90da68a9d7eecf85f926f1eb04bc2d4 100644 --- a/VectoCore/VectoCore/OutputData/FileIO/JSONFileWriter.cs +++ b/VectoCore/VectoCore/OutputData/FileIO/JSONFileWriter.cs @@ -313,11 +313,7 @@ public class JSONFileWriter : IOutputFileWriter var torqueLimits = GetTorqueLimits(vehicle); - var electricMotorsOut = GetElectricMotors(vehicle, basePath); - - var battery = GetBattery(vehicle, basePath); - - var body = GetVehicle(vehicle, airdrag, DeclMode, basePath); + var body = GetVehicle(vehicle, airdrag, DeclMode, basePath); body.Add("IdlingSpeed", vehicle.EngineIdleSpeed.AsRPM); body.Add("Retarder", retarderOut); @@ -328,11 +324,6 @@ public class JSONFileWriter : IOutputFileWriter if ((vehicle.TankSystem.HasValue)) body["TankSystem"] = vehicle.TankSystem.Value.ToString(); - body.Add("InitialSoC", vehicle.InitialSOC * 100); - body.Add("PowertrainConfiguration", "ParallelHybrid"); - body.Add("ElectricMotors", electricMotorsOut); - body.Add("Battery", battery); - WriteFile(header, body, filename); } @@ -453,7 +444,7 @@ public class JSONFileWriter : IOutputFileWriter var basePath = Path.GetDirectoryName(filename); // Header - var header = GetHeader(VehicleFormatVersion); + var header = GetHeader(HEV_BEVVehicleFormatVersion); // Body var retarderOut = GetRetarderOut(retarder, basePath); @@ -464,6 +455,10 @@ public class JSONFileWriter : IOutputFileWriter var torqueLimits = GetTorqueLimits(vehicle); + var electricMotorsOut = GetElectricMotors(vehicle, basePath); + + var battery = GetBattery(vehicle, basePath); + var body = GetVehicle(vehicle, airdrag, DeclMode, basePath); body.Add("IdlingSpeed", vehicle.EngineIdleSpeed.AsRPM); @@ -475,6 +470,12 @@ public class JSONFileWriter : IOutputFileWriter if ((vehicle.TankSystem.HasValue)) body["TankSystem"] = vehicle.TankSystem.Value.ToString(); + + body.Add("InitialSoC", vehicle.InitialSOC * 100); + body.Add("PowertrainConfiguration", "ParallelHybrid"); + body.Add("ElectricMotors", electricMotorsOut); + body.Add("Battery", battery); + WriteFile(header, body, filename); }