diff --git a/VECTO/File Browser/FileBrowserModule.vb b/VECTO/File Browser/FileBrowserModule.vb index ca63789858564b70c3b98e14df7a2c9cbf0c7614..7109cce430ce55f9e07136c855bd986f5066473e 100644 --- a/VECTO/File Browser/FileBrowserModule.vb +++ b/VECTO/File Browser/FileBrowserModule.vb @@ -37,6 +37,8 @@ Public Module FileBrowserModule Public BatteryInternalResistanceCurveFileBrowser As FileBrowser Public BatterySoCCurveFileBrowser As FileBrowser + Public HCUFileBrowser As FileBrowser + Public EngineFileBrowser As FileBrowser Public GearboxFileBrowser As FileBrowser Public TCUFileBrowser As FileBrowser diff --git a/VECTO/GUI/BatteryForm.vb b/VECTO/GUI/BatteryForm.vb index cd5fdc4262a82e3f7ace7b7e086942ebe0ce5061..3fcdcb2504933d0a68ce2435fee16b34f77f58e3 100644 --- a/VECTO/GUI/BatteryForm.vb +++ b/VECTO/GUI/BatteryForm.vb @@ -47,7 +47,7 @@ Public Class BatteryForm End Sub 'Initialise. - Private Sub EngineFormLoad(sender As Object, e As EventArgs) Handles Me.Load + Private Sub BatteryFormLoad(sender As Object, e As EventArgs) Handles Me.Load ' initialize form on load - nothng to do right now @@ -57,7 +57,7 @@ Public Class BatteryForm _changed = False - NewEngine() + NewBattery() End Sub 'Set generic values for Declaration mode. @@ -73,15 +73,15 @@ Public Class BatteryForm #Region "Toolbar" Private Sub ToolStripBtNew_Click(sender As Object, e As EventArgs) Handles ToolStripBtNew.Click - NewEngine() + NewBattery() End Sub Private Sub ToolStripBtOpen_Click(sender As Object, e As EventArgs) Handles ToolStripBtOpen.Click - If EngineFileBrowser.OpenDialog(_batteryFile) Then + If BatteryFileBrowser.OpenDialog(_batteryFile) Then Try - OpenBatteryFile(EngineFileBrowser.Files(0)) + OpenBatteryFile(BatteryFileBrowser.Files(0)) Catch ex As Exception - MsgBox(ex.Message, MsgBoxStyle.OkOnly, "Error loading Engine File") + MsgBox(ex.Message, MsgBoxStyle.OkOnly, "Error loading Battery File") End Try End If End Sub @@ -130,7 +130,7 @@ Public Class BatteryForm #End Region 'Create new empty Engine file. - Private Sub NewEngine() + Private Sub NewBattery() If ChangeCheckCancel() Then Exit Sub @@ -203,11 +203,11 @@ Public Class BatteryForm Return False End If End If - Return SaveEngineToFile(_batteryFile) + Return SaveBatteryToFile(_batteryFile) End Function 'Save VENG file to given filepath. Called by SaveOrSaveAs. - Private Function SaveEngineToFile(ByVal file As String) As Boolean + Private Function SaveBatteryToFile(ByVal file As String) As Boolean Dim battery As Battery = New Battery battery.FilePath = file diff --git a/VECTO/GUI/HybridStratebyParamsForm.Designer.vb b/VECTO/GUI/HybridStratebyParamsForm.Designer.vb new file mode 100644 index 0000000000000000000000000000000000000000..542947c114d67a0442bd3964efc404ee6acaf518 --- /dev/null +++ b/VECTO/GUI/HybridStratebyParamsForm.Designer.vb @@ -0,0 +1,549 @@ +' Copyright 2017 European Union. +' Licensed under the EUPL (the 'Licence'); +' +' * You may not use this work except in compliance with the Licence. +' * You may obtain a copy of the Licence at: http://ec.europa.eu/idabc/eupl +' * Unless required by applicable law or agreed to in writing, +' software distributed under the Licence is distributed on an "AS IS" basis, +' WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +' +' See the LICENSE.txt for the specific language governing permissions and limitations. +Imports System.ComponentModel +Imports Microsoft.VisualBasic.CompilerServices + +<DesignerGenerated()> +Partial Class HybridStrategyParamsForm + Inherits Form + + 'Das Formular überschreibt den Löschvorgang, um die Komponentenliste zu bereinigen. + <DebuggerNonUserCode()> + Protected Overrides Sub Dispose(ByVal disposing As Boolean) + Try + If disposing AndAlso components IsNot Nothing Then + components.Dispose() + End If + Finally + MyBase.Dispose(disposing) + End Try + End Sub + + 'Wird vom Windows Form-Designer benötigt. + Private components As IContainer + + 'Hinweis: Die folgende Prozedur ist für den Windows Form-Designer erforderlich. + 'Das Bearbeiten ist mit dem Windows Form-Designer möglich. + 'Das Bearbeiten mit dem Code-Editor ist nicht möglich. + <DebuggerStepThrough()> + Private Sub InitializeComponent() + Me.components = New System.ComponentModel.Container() + Dim resources As System.ComponentModel.ComponentResourceManager = New System.ComponentModel.ComponentResourceManager(GetType(HybridStrategyParamsForm)) + Me.tbEquivalenceFactor = New System.Windows.Forms.TextBox() + Me.lblEquivFactorUnit = New System.Windows.Forms.Label() + Me.lblEvquivFactor = New System.Windows.Forms.Label() + Me.ButCancel = New System.Windows.Forms.Button() + Me.ButOK = New System.Windows.Forms.Button() + Me.ToolStrip1 = New System.Windows.Forms.ToolStrip() + Me.ToolStripBtNew = New System.Windows.Forms.ToolStripButton() + Me.ToolStripBtOpen = New System.Windows.Forms.ToolStripButton() + Me.ToolStripBtSave = New System.Windows.Forms.ToolStripButton() + Me.ToolStripBtSaveAs = New System.Windows.Forms.ToolStripButton() + Me.ToolStripSeparator3 = New System.Windows.Forms.ToolStripSeparator() + Me.ToolStripBtSendTo = New System.Windows.Forms.ToolStripButton() + Me.ToolStripSeparator1 = New System.Windows.Forms.ToolStripSeparator() + Me.ToolStripButton1 = New System.Windows.Forms.ToolStripButton() + Me.StatusStrip1 = New System.Windows.Forms.StatusStrip() + Me.LbStatus = New System.Windows.Forms.ToolStripStatusLabel() + Me.PictureBox1 = New System.Windows.Forms.PictureBox() + Me.CmOpenFile = New System.Windows.Forms.ContextMenuStrip(Me.components) + Me.OpenWithToolStripMenuItem = New System.Windows.Forms.ToolStripMenuItem() + Me.ShowInFolderToolStripMenuItem = New System.Windows.Forms.ToolStripMenuItem() + Me.pnEquivFactor = New System.Windows.Forms.Panel() + Me.lblTitle = New System.Windows.Forms.Label() + Me.pnMinSoC = New System.Windows.Forms.Panel() + Me.lblMinSoC = New System.Windows.Forms.Label() + Me.lblMinSoCUnit = New System.Windows.Forms.Label() + Me.tbMinSoC = New System.Windows.Forms.TextBox() + Me.pnMaxSoC = New System.Windows.Forms.Panel() + Me.lblMaxSoC = New System.Windows.Forms.Label() + Me.lblMaxSoCUnit = New System.Windows.Forms.Label() + Me.tbMaxSoC = New System.Windows.Forms.TextBox() + Me.pnTargetSoC = New System.Windows.Forms.Panel() + Me.lblTargetSoC = New System.Windows.Forms.Label() + Me.lblTargetSoCUnit = New System.Windows.Forms.Label() + Me.tbTargetSoC = New System.Windows.Forms.TextBox() + Me.pnAuxBufferTime = New System.Windows.Forms.Panel() + Me.lblAuxBufferTime = New System.Windows.Forms.Label() + Me.lblAuxBufferTimeUnit = New System.Windows.Forms.Label() + Me.tbauxBufferTime = New System.Windows.Forms.TextBox() + Me.pnAuxBufferChgTime = New System.Windows.Forms.Panel() + Me.Label1 = New System.Windows.Forms.Label() + Me.lblAuxBufferChgTimeUnit = New System.Windows.Forms.Label() + Me.tbAuxBufferChargeTime = New System.Windows.Forms.TextBox() + Me.ToolStrip1.SuspendLayout() + Me.StatusStrip1.SuspendLayout() + CType(Me.PictureBox1, System.ComponentModel.ISupportInitialize).BeginInit() + Me.CmOpenFile.SuspendLayout() + Me.pnEquivFactor.SuspendLayout() + Me.pnMinSoC.SuspendLayout() + Me.pnMaxSoC.SuspendLayout() + Me.pnTargetSoC.SuspendLayout() + Me.pnAuxBufferTime.SuspendLayout() + Me.pnAuxBufferChgTime.SuspendLayout() + Me.SuspendLayout() + ' + 'tbEquivalenceFactor + ' + Me.tbEquivalenceFactor.Location = New System.Drawing.Point(181, 4) + Me.tbEquivalenceFactor.Name = "tbEquivalenceFactor" + Me.tbEquivalenceFactor.Size = New System.Drawing.Size(57, 20) + Me.tbEquivalenceFactor.TabIndex = 3 + ' + 'lblEquivFactorUnit + ' + Me.lblEquivFactorUnit.AutoSize = True + Me.lblEquivFactorUnit.Location = New System.Drawing.Point(244, 7) + Me.lblEquivFactorUnit.Name = "lblEquivFactorUnit" + Me.lblEquivFactorUnit.Size = New System.Drawing.Size(16, 13) + Me.lblEquivFactorUnit.TabIndex = 24 + Me.lblEquivFactorUnit.Text = "[-]" + ' + 'lblEvquivFactor + ' + Me.lblEvquivFactor.AutoSize = True + Me.lblEvquivFactor.Location = New System.Drawing.Point(3, 7) + Me.lblEvquivFactor.Name = "lblEvquivFactor" + Me.lblEvquivFactor.Size = New System.Drawing.Size(99, 13) + Me.lblEvquivFactor.TabIndex = 0 + Me.lblEvquivFactor.Text = "Equivalence Factor" + ' + 'ButCancel + ' + Me.ButCancel.Anchor = CType((System.Windows.Forms.AnchorStyles.Bottom Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) + Me.ButCancel.DialogResult = System.Windows.Forms.DialogResult.Cancel + Me.ButCancel.Location = New System.Drawing.Point(362, 268) + Me.ButCancel.Name = "ButCancel" + Me.ButCancel.Size = New System.Drawing.Size(75, 23) + Me.ButCancel.TabIndex = 13 + Me.ButCancel.Text = "Cancel" + Me.ButCancel.UseVisualStyleBackColor = True + ' + 'ButOK + ' + Me.ButOK.Anchor = CType((System.Windows.Forms.AnchorStyles.Bottom Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) + Me.ButOK.Location = New System.Drawing.Point(281, 268) + Me.ButOK.Name = "ButOK" + Me.ButOK.Size = New System.Drawing.Size(75, 23) + Me.ButOK.TabIndex = 12 + Me.ButOK.Text = "Save" + Me.ButOK.UseVisualStyleBackColor = True + ' + 'ToolStrip1 + ' + Me.ToolStrip1.GripStyle = System.Windows.Forms.ToolStripGripStyle.Hidden + Me.ToolStrip1.Items.AddRange(New System.Windows.Forms.ToolStripItem() {Me.ToolStripBtNew, Me.ToolStripBtOpen, Me.ToolStripBtSave, Me.ToolStripBtSaveAs, Me.ToolStripSeparator3, Me.ToolStripBtSendTo, Me.ToolStripSeparator1, Me.ToolStripButton1}) + Me.ToolStrip1.Location = New System.Drawing.Point(0, 0) + Me.ToolStrip1.Name = "ToolStrip1" + Me.ToolStrip1.Size = New System.Drawing.Size(449, 25) + Me.ToolStrip1.TabIndex = 30 + Me.ToolStrip1.Text = "ToolStrip1" + ' + 'ToolStripBtNew + ' + Me.ToolStripBtNew.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image + Me.ToolStripBtNew.Image = Global.TUGraz.VECTO.My.Resources.Resources.blue_document_icon + Me.ToolStripBtNew.ImageTransparentColor = System.Drawing.Color.Magenta + Me.ToolStripBtNew.Name = "ToolStripBtNew" + Me.ToolStripBtNew.Size = New System.Drawing.Size(23, 22) + Me.ToolStripBtNew.Text = "ToolStripButton1" + Me.ToolStripBtNew.ToolTipText = "New" + ' + 'ToolStripBtOpen + ' + Me.ToolStripBtOpen.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image + Me.ToolStripBtOpen.Image = Global.TUGraz.VECTO.My.Resources.Resources.Open_icon + Me.ToolStripBtOpen.ImageTransparentColor = System.Drawing.Color.Magenta + Me.ToolStripBtOpen.Name = "ToolStripBtOpen" + Me.ToolStripBtOpen.Size = New System.Drawing.Size(23, 22) + Me.ToolStripBtOpen.Text = "ToolStripButton1" + Me.ToolStripBtOpen.ToolTipText = "Open..." + ' + 'ToolStripBtSave + ' + Me.ToolStripBtSave.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image + Me.ToolStripBtSave.Image = Global.TUGraz.VECTO.My.Resources.Resources.Actions_document_save_icon + Me.ToolStripBtSave.ImageTransparentColor = System.Drawing.Color.Magenta + Me.ToolStripBtSave.Name = "ToolStripBtSave" + Me.ToolStripBtSave.Size = New System.Drawing.Size(23, 22) + Me.ToolStripBtSave.Text = "ToolStripButton1" + Me.ToolStripBtSave.ToolTipText = "Save" + ' + 'ToolStripBtSaveAs + ' + Me.ToolStripBtSaveAs.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image + Me.ToolStripBtSaveAs.Image = Global.TUGraz.VECTO.My.Resources.Resources.Actions_document_save_as_icon + Me.ToolStripBtSaveAs.ImageTransparentColor = System.Drawing.Color.Magenta + Me.ToolStripBtSaveAs.Name = "ToolStripBtSaveAs" + Me.ToolStripBtSaveAs.Size = New System.Drawing.Size(23, 22) + Me.ToolStripBtSaveAs.Text = "ToolStripButton1" + Me.ToolStripBtSaveAs.ToolTipText = "Save As..." + ' + 'ToolStripSeparator3 + ' + Me.ToolStripSeparator3.Name = "ToolStripSeparator3" + Me.ToolStripSeparator3.Size = New System.Drawing.Size(6, 25) + ' + 'ToolStripBtSendTo + ' + Me.ToolStripBtSendTo.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image + Me.ToolStripBtSendTo.Image = Global.TUGraz.VECTO.My.Resources.Resources.export_icon + Me.ToolStripBtSendTo.ImageTransparentColor = System.Drawing.Color.Magenta + Me.ToolStripBtSendTo.Name = "ToolStripBtSendTo" + Me.ToolStripBtSendTo.Size = New System.Drawing.Size(23, 22) + Me.ToolStripBtSendTo.Text = "Send to Job Editor" + Me.ToolStripBtSendTo.ToolTipText = "Send to Job Editor" + ' + 'ToolStripSeparator1 + ' + Me.ToolStripSeparator1.Name = "ToolStripSeparator1" + Me.ToolStripSeparator1.Size = New System.Drawing.Size(6, 25) + ' + 'ToolStripButton1 + ' + Me.ToolStripButton1.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image + Me.ToolStripButton1.Image = Global.TUGraz.VECTO.My.Resources.Resources.Help_icon + Me.ToolStripButton1.ImageTransparentColor = System.Drawing.Color.Magenta + Me.ToolStripButton1.Name = "ToolStripButton1" + Me.ToolStripButton1.Size = New System.Drawing.Size(23, 22) + Me.ToolStripButton1.Text = "Help" + ' + 'StatusStrip1 + ' + Me.StatusStrip1.Items.AddRange(New System.Windows.Forms.ToolStripItem() {Me.LbStatus}) + Me.StatusStrip1.Location = New System.Drawing.Point(0, 294) + Me.StatusStrip1.Name = "StatusStrip1" + Me.StatusStrip1.Size = New System.Drawing.Size(449, 22) + Me.StatusStrip1.SizingGrip = False + Me.StatusStrip1.TabIndex = 37 + Me.StatusStrip1.Text = "StatusStrip1" + ' + 'LbStatus + ' + Me.LbStatus.Name = "LbStatus" + Me.LbStatus.Size = New System.Drawing.Size(39, 17) + Me.LbStatus.Text = "Status" + ' + 'PictureBox1 + ' + Me.PictureBox1.BackColor = System.Drawing.Color.White + Me.PictureBox1.Image = Global.TUGraz.VECTO.My.Resources.Resources.VECTO_ENG + Me.PictureBox1.Location = New System.Drawing.Point(0, 28) + Me.PictureBox1.Name = "PictureBox1" + Me.PictureBox1.Size = New System.Drawing.Size(502, 40) + Me.PictureBox1.TabIndex = 39 + Me.PictureBox1.TabStop = False + ' + 'CmOpenFile + ' + Me.CmOpenFile.Items.AddRange(New System.Windows.Forms.ToolStripItem() {Me.OpenWithToolStripMenuItem, Me.ShowInFolderToolStripMenuItem}) + Me.CmOpenFile.Name = "CmOpenFile" + Me.CmOpenFile.Size = New System.Drawing.Size(153, 48) + ' + 'OpenWithToolStripMenuItem + ' + Me.OpenWithToolStripMenuItem.Name = "OpenWithToolStripMenuItem" + Me.OpenWithToolStripMenuItem.Size = New System.Drawing.Size(152, 22) + Me.OpenWithToolStripMenuItem.Text = "Open with ..." + ' + 'ShowInFolderToolStripMenuItem + ' + Me.ShowInFolderToolStripMenuItem.Name = "ShowInFolderToolStripMenuItem" + Me.ShowInFolderToolStripMenuItem.Size = New System.Drawing.Size(152, 22) + Me.ShowInFolderToolStripMenuItem.Text = "Show in Folder" + ' + 'pnEquivFactor + ' + Me.pnEquivFactor.Controls.Add(Me.lblEvquivFactor) + Me.pnEquivFactor.Controls.Add(Me.lblEquivFactorUnit) + Me.pnEquivFactor.Controls.Add(Me.tbEquivalenceFactor) + Me.pnEquivFactor.Location = New System.Drawing.Point(12, 74) + Me.pnEquivFactor.Name = "pnEquivFactor" + Me.pnEquivFactor.Size = New System.Drawing.Size(288, 28) + Me.pnEquivFactor.TabIndex = 3 + ' + 'lblTitle + ' + Me.lblTitle.AutoSize = True + Me.lblTitle.BackColor = System.Drawing.Color.White + Me.lblTitle.Font = New System.Drawing.Font("Microsoft Sans Serif", 18.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) + Me.lblTitle.Location = New System.Drawing.Point(119, 35) + Me.lblTitle.Name = "lblTitle" + Me.lblTitle.Size = New System.Drawing.Size(307, 29) + Me.lblTitle.TabIndex = 48 + Me.lblTitle.Text = "Hybrid Strategy Parameters" + ' + 'pnMinSoC + ' + Me.pnMinSoC.Controls.Add(Me.lblMinSoC) + Me.pnMinSoC.Controls.Add(Me.lblMinSoCUnit) + Me.pnMinSoC.Controls.Add(Me.tbMinSoC) + Me.pnMinSoC.Location = New System.Drawing.Point(12, 104) + Me.pnMinSoC.Name = "pnMinSoC" + Me.pnMinSoC.Size = New System.Drawing.Size(288, 28) + Me.pnMinSoC.TabIndex = 25 + ' + 'lblMinSoC + ' + Me.lblMinSoC.AutoSize = True + Me.lblMinSoC.Location = New System.Drawing.Point(3, 7) + Me.lblMinSoC.Name = "lblMinSoC" + Me.lblMinSoC.Size = New System.Drawing.Size(47, 13) + Me.lblMinSoC.TabIndex = 0 + Me.lblMinSoC.Text = "Min SoC" + ' + 'lblMinSoCUnit + ' + Me.lblMinSoCUnit.AutoSize = True + Me.lblMinSoCUnit.Location = New System.Drawing.Point(244, 7) + Me.lblMinSoCUnit.Name = "lblMinSoCUnit" + Me.lblMinSoCUnit.Size = New System.Drawing.Size(21, 13) + Me.lblMinSoCUnit.TabIndex = 24 + Me.lblMinSoCUnit.Text = "[%]" + ' + 'tbMinSoC + ' + Me.tbMinSoC.Location = New System.Drawing.Point(181, 4) + Me.tbMinSoC.Name = "tbMinSoC" + Me.tbMinSoC.Size = New System.Drawing.Size(57, 20) + Me.tbMinSoC.TabIndex = 3 + ' + 'pnMaxSoC + ' + Me.pnMaxSoC.Controls.Add(Me.lblMaxSoC) + Me.pnMaxSoC.Controls.Add(Me.lblMaxSoCUnit) + Me.pnMaxSoC.Controls.Add(Me.tbMaxSoC) + Me.pnMaxSoC.Location = New System.Drawing.Point(12, 134) + Me.pnMaxSoC.Name = "pnMaxSoC" + Me.pnMaxSoC.Size = New System.Drawing.Size(288, 28) + Me.pnMaxSoC.TabIndex = 26 + ' + 'lblMaxSoC + ' + Me.lblMaxSoC.AutoSize = True + Me.lblMaxSoC.Location = New System.Drawing.Point(3, 7) + Me.lblMaxSoC.Name = "lblMaxSoC" + Me.lblMaxSoC.Size = New System.Drawing.Size(50, 13) + Me.lblMaxSoC.TabIndex = 0 + Me.lblMaxSoC.Text = "Max SoC" + ' + 'lblMaxSoCUnit + ' + Me.lblMaxSoCUnit.AutoSize = True + Me.lblMaxSoCUnit.Location = New System.Drawing.Point(244, 7) + Me.lblMaxSoCUnit.Name = "lblMaxSoCUnit" + Me.lblMaxSoCUnit.Size = New System.Drawing.Size(21, 13) + Me.lblMaxSoCUnit.TabIndex = 24 + Me.lblMaxSoCUnit.Text = "[%]" + ' + 'tbMaxSoC + ' + Me.tbMaxSoC.Location = New System.Drawing.Point(181, 4) + Me.tbMaxSoC.Name = "tbMaxSoC" + Me.tbMaxSoC.Size = New System.Drawing.Size(57, 20) + Me.tbMaxSoC.TabIndex = 3 + ' + 'pnTargetSoC + ' + Me.pnTargetSoC.Controls.Add(Me.lblTargetSoC) + Me.pnTargetSoC.Controls.Add(Me.lblTargetSoCUnit) + Me.pnTargetSoC.Controls.Add(Me.tbTargetSoC) + Me.pnTargetSoC.Location = New System.Drawing.Point(12, 164) + Me.pnTargetSoC.Name = "pnTargetSoC" + Me.pnTargetSoC.Size = New System.Drawing.Size(288, 28) + Me.pnTargetSoC.TabIndex = 27 + ' + 'lblTargetSoC + ' + Me.lblTargetSoC.AutoSize = True + Me.lblTargetSoC.Location = New System.Drawing.Point(3, 7) + Me.lblTargetSoC.Name = "lblTargetSoC" + Me.lblTargetSoC.Size = New System.Drawing.Size(61, 13) + Me.lblTargetSoC.TabIndex = 0 + Me.lblTargetSoC.Text = "Target SoC" + ' + 'lblTargetSoCUnit + ' + Me.lblTargetSoCUnit.AutoSize = True + Me.lblTargetSoCUnit.Location = New System.Drawing.Point(244, 7) + Me.lblTargetSoCUnit.Name = "lblTargetSoCUnit" + Me.lblTargetSoCUnit.Size = New System.Drawing.Size(21, 13) + Me.lblTargetSoCUnit.TabIndex = 24 + Me.lblTargetSoCUnit.Text = "[%]" + ' + 'tbTargetSoC + ' + Me.tbTargetSoC.Location = New System.Drawing.Point(181, 4) + Me.tbTargetSoC.Name = "tbTargetSoC" + Me.tbTargetSoC.Size = New System.Drawing.Size(57, 20) + Me.tbTargetSoC.TabIndex = 3 + ' + 'pnAuxBufferTime + ' + Me.pnAuxBufferTime.Controls.Add(Me.lblAuxBufferTime) + Me.pnAuxBufferTime.Controls.Add(Me.lblAuxBufferTimeUnit) + Me.pnAuxBufferTime.Controls.Add(Me.tbauxBufferTime) + Me.pnAuxBufferTime.Location = New System.Drawing.Point(12, 194) + Me.pnAuxBufferTime.Name = "pnAuxBufferTime" + Me.pnAuxBufferTime.Size = New System.Drawing.Size(288, 28) + Me.pnAuxBufferTime.TabIndex = 28 + ' + 'lblAuxBufferTime + ' + Me.lblAuxBufferTime.AutoSize = True + Me.lblAuxBufferTime.Location = New System.Drawing.Point(3, 7) + Me.lblAuxBufferTime.Name = "lblAuxBufferTime" + Me.lblAuxBufferTime.Size = New System.Drawing.Size(82, 13) + Me.lblAuxBufferTime.TabIndex = 0 + Me.lblAuxBufferTime.Text = "Aux Buffer Time" + ' + 'lblAuxBufferTimeUnit + ' + Me.lblAuxBufferTimeUnit.AutoSize = True + Me.lblAuxBufferTimeUnit.Location = New System.Drawing.Point(244, 7) + Me.lblAuxBufferTimeUnit.Name = "lblAuxBufferTimeUnit" + Me.lblAuxBufferTimeUnit.Size = New System.Drawing.Size(18, 13) + Me.lblAuxBufferTimeUnit.TabIndex = 24 + Me.lblAuxBufferTimeUnit.Text = "[s]" + ' + 'tbauxBufferTime + ' + Me.tbauxBufferTime.Location = New System.Drawing.Point(181, 4) + Me.tbauxBufferTime.Name = "tbauxBufferTime" + Me.tbauxBufferTime.Size = New System.Drawing.Size(57, 20) + Me.tbauxBufferTime.TabIndex = 3 + ' + 'pnAuxBufferChgTime + ' + Me.pnAuxBufferChgTime.Controls.Add(Me.Label1) + Me.pnAuxBufferChgTime.Controls.Add(Me.lblAuxBufferChgTimeUnit) + Me.pnAuxBufferChgTime.Controls.Add(Me.tbAuxBufferChargeTime) + Me.pnAuxBufferChgTime.Location = New System.Drawing.Point(12, 224) + Me.pnAuxBufferChgTime.Name = "pnAuxBufferChgTime" + Me.pnAuxBufferChgTime.Size = New System.Drawing.Size(288, 28) + Me.pnAuxBufferChgTime.TabIndex = 29 + ' + 'Label1 + ' + Me.Label1.AutoSize = True + Me.Label1.Location = New System.Drawing.Point(3, 7) + Me.Label1.Name = "Label1" + Me.Label1.Size = New System.Drawing.Size(119, 13) + Me.Label1.TabIndex = 0 + Me.Label1.Text = "Aux Buffer Charge Time" + ' + 'lblAuxBufferChgTimeUnit + ' + Me.lblAuxBufferChgTimeUnit.AutoSize = True + Me.lblAuxBufferChgTimeUnit.Location = New System.Drawing.Point(244, 7) + Me.lblAuxBufferChgTimeUnit.Name = "lblAuxBufferChgTimeUnit" + Me.lblAuxBufferChgTimeUnit.Size = New System.Drawing.Size(18, 13) + Me.lblAuxBufferChgTimeUnit.TabIndex = 24 + Me.lblAuxBufferChgTimeUnit.Text = "[s]" + ' + 'tbAuxBufferChargeTime + ' + Me.tbAuxBufferChargeTime.Location = New System.Drawing.Point(181, 4) + Me.tbAuxBufferChargeTime.Name = "tbAuxBufferChargeTime" + Me.tbAuxBufferChargeTime.Size = New System.Drawing.Size(57, 20) + Me.tbAuxBufferChargeTime.TabIndex = 3 + ' + 'HybridStrategyParamsForm + ' + Me.AcceptButton = Me.ButOK + Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!) + Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font + Me.CancelButton = Me.ButCancel + Me.ClientSize = New System.Drawing.Size(449, 316) + Me.Controls.Add(Me.pnAuxBufferChgTime) + Me.Controls.Add(Me.pnAuxBufferTime) + Me.Controls.Add(Me.pnTargetSoC) + Me.Controls.Add(Me.pnMaxSoC) + Me.Controls.Add(Me.pnMinSoC) + Me.Controls.Add(Me.lblTitle) + Me.Controls.Add(Me.pnEquivFactor) + Me.Controls.Add(Me.PictureBox1) + Me.Controls.Add(Me.StatusStrip1) + Me.Controls.Add(Me.ToolStrip1) + Me.Controls.Add(Me.ButCancel) + Me.Controls.Add(Me.ButOK) + Me.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedSingle + Me.Icon = CType(resources.GetObject("$this.Icon"), System.Drawing.Icon) + Me.MaximizeBox = False + Me.Name = "HybridStrategyParamsForm" + Me.SizeGripStyle = System.Windows.Forms.SizeGripStyle.Hide + Me.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen + Me.Text = "Electric Energy Storage" + Me.ToolStrip1.ResumeLayout(False) + Me.ToolStrip1.PerformLayout() + Me.StatusStrip1.ResumeLayout(False) + Me.StatusStrip1.PerformLayout() + CType(Me.PictureBox1, System.ComponentModel.ISupportInitialize).EndInit() + Me.CmOpenFile.ResumeLayout(False) + Me.pnEquivFactor.ResumeLayout(False) + Me.pnEquivFactor.PerformLayout() + Me.pnMinSoC.ResumeLayout(False) + Me.pnMinSoC.PerformLayout() + Me.pnMaxSoC.ResumeLayout(False) + Me.pnMaxSoC.PerformLayout() + Me.pnTargetSoC.ResumeLayout(False) + Me.pnTargetSoC.PerformLayout() + Me.pnAuxBufferTime.ResumeLayout(False) + Me.pnAuxBufferTime.PerformLayout() + Me.pnAuxBufferChgTime.ResumeLayout(False) + Me.pnAuxBufferChgTime.PerformLayout() + Me.ResumeLayout(False) + Me.PerformLayout() + + End Sub + Friend WithEvents tbEquivalenceFactor As TextBox + Friend WithEvents lblEquivFactorUnit As Label + Friend WithEvents lblEvquivFactor As Label + Friend WithEvents ButCancel As Button + Friend WithEvents ButOK As Button + Friend WithEvents ToolStrip1 As ToolStrip + Friend WithEvents ToolStripBtNew As ToolStripButton + Friend WithEvents ToolStripBtOpen As ToolStripButton + Friend WithEvents ToolStripBtSave As ToolStripButton + Friend WithEvents ToolStripBtSaveAs As ToolStripButton + Friend WithEvents ToolStripSeparator3 As ToolStripSeparator + Friend WithEvents ToolStripBtSendTo As ToolStripButton + Friend WithEvents StatusStrip1 As StatusStrip + Friend WithEvents LbStatus As ToolStripStatusLabel + Friend WithEvents PictureBox1 As PictureBox + Friend WithEvents ToolStripSeparator1 As ToolStripSeparator + Friend WithEvents ToolStripButton1 As ToolStripButton + Friend WithEvents CmOpenFile As ContextMenuStrip + Friend WithEvents OpenWithToolStripMenuItem As ToolStripMenuItem + Friend WithEvents ShowInFolderToolStripMenuItem As ToolStripMenuItem + Friend WithEvents pnEquivFactor As Panel + Friend WithEvents lblTitle As Label + Friend WithEvents pnMinSoC As Panel + Friend WithEvents lblMinSoC As Label + Friend WithEvents lblMinSoCUnit As Label + Friend WithEvents tbMinSoC As TextBox + Friend WithEvents pnMaxSoC As Panel + Friend WithEvents lblMaxSoC As Label + Friend WithEvents lblMaxSoCUnit As Label + Friend WithEvents tbMaxSoC As TextBox + Friend WithEvents pnTargetSoC As Panel + Friend WithEvents lblTargetSoC As Label + Friend WithEvents lblTargetSoCUnit As Label + Friend WithEvents tbTargetSoC As TextBox + Friend WithEvents pnAuxBufferTime As Panel + Friend WithEvents lblAuxBufferTime As Label + Friend WithEvents lblAuxBufferTimeUnit As Label + Friend WithEvents tbauxBufferTime As TextBox + Friend WithEvents pnAuxBufferChgTime As Panel + Friend WithEvents Label1 As Label + Friend WithEvents lblAuxBufferChgTimeUnit As Label + Friend WithEvents tbAuxBufferChargeTime As TextBox +End Class diff --git a/VECTO/GUI/HybridStratebyParamsForm.resx b/VECTO/GUI/HybridStratebyParamsForm.resx new file mode 100644 index 0000000000000000000000000000000000000000..81623a24e36cbaf6c70822eb47f982f654db0f27 --- /dev/null +++ b/VECTO/GUI/HybridStratebyParamsForm.resx @@ -0,0 +1,206 @@ +<?xml version="1.0" encoding="utf-8"?> +<root> + <!-- + Microsoft ResX Schema + + Version 2.0 + + The primary goals of this format is to allow a simple XML format + that is mostly human readable. The generation and parsing of the + various data types are done through the TypeConverter classes + associated with the data types. + + Example: + + ... ado.net/XML headers & schema ... + <resheader name="resmimetype">text/microsoft-resx</resheader> + <resheader name="version">2.0</resheader> + <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader> + <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader> + <data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data> + <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data> + <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64"> + <value>[base64 mime encoded serialized .NET Framework object]</value> + </data> + <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64"> + <value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value> + <comment>This is a comment</comment> + </data> + + There are any number of "resheader" rows that contain simple + name/value pairs. + + Each data row contains a name, and value. The row also contains a + type or mimetype. Type corresponds to a .NET class that support + text/value conversion through the TypeConverter architecture. + Classes that don't support this are serialized and stored with the + mimetype set. + + The mimetype is used for serialized objects, and tells the + ResXResourceReader how to depersist the object. This is currently not + extensible. For a given mimetype the value must be set accordingly: + + Note - application/x-microsoft.net.object.binary.base64 is the format + that the ResXResourceWriter will generate, however the reader can + read any of the formats listed below. + + mimetype: application/x-microsoft.net.object.binary.base64 + value : The object must be serialized with + : System.Runtime.Serialization.Formatters.Binary.BinaryFormatter + : and then encoded with base64 encoding. + + mimetype: application/x-microsoft.net.object.soap.base64 + value : The object must be serialized with + : System.Runtime.Serialization.Formatters.Soap.SoapFormatter + : and then encoded with base64 encoding. + + mimetype: application/x-microsoft.net.object.bytearray.base64 + value : The object must be serialized into a byte array + : using a System.ComponentModel.TypeConverter + : and then encoded with base64 encoding. + --> + <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata"> + <xsd:import namespace="http://www.w3.org/XML/1998/namespace" /> + <xsd:element name="root" msdata:IsDataSet="true"> + <xsd:complexType> + <xsd:choice maxOccurs="unbounded"> + <xsd:element name="metadata"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="value" type="xsd:string" minOccurs="0" /> + </xsd:sequence> + <xsd:attribute name="name" use="required" type="xsd:string" /> + <xsd:attribute name="type" type="xsd:string" /> + <xsd:attribute name="mimetype" type="xsd:string" /> + <xsd:attribute ref="xml:space" /> + </xsd:complexType> + </xsd:element> + <xsd:element name="assembly"> + <xsd:complexType> + <xsd:attribute name="alias" type="xsd:string" /> + <xsd:attribute name="name" type="xsd:string" /> + </xsd:complexType> + </xsd:element> + <xsd:element name="data"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" /> + <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" /> + </xsd:sequence> + <xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" /> + <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" /> + <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" /> + <xsd:attribute ref="xml:space" /> + </xsd:complexType> + </xsd:element> + <xsd:element name="resheader"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" /> + </xsd:sequence> + <xsd:attribute name="name" type="xsd:string" use="required" /> + </xsd:complexType> + </xsd:element> + </xsd:choice> + </xsd:complexType> + </xsd:element> + </xsd:schema> + <resheader name="resmimetype"> + <value>text/microsoft-resx</value> + </resheader> + <resheader name="version"> + <value>2.0</value> + </resheader> + <resheader name="reader"> + <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> + </resheader> + <resheader name="writer"> + <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> + </resheader> + <metadata name="ToolStrip1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"> + <value>17, 17</value> + </metadata> + <metadata name="StatusStrip1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"> + <value>114, 20</value> + </metadata> + <metadata name="CmOpenFile.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"> + <value>226, 18</value> + </metadata> + <assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" /> + <data name="$this.Icon" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64"> + <value> + AAABAAEAICAAAAEAIACoEAAAFgAAACgAAAAgAAAAQAAAAAEAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP39/QLg6NsG/v7+AgAA + AAAAAAAAAAAAAAAAAAAAAAAA//////////////////////////////////////////////////////// + /////////////wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD+/v4B1uDQEIil + di319/MQ////AQAAAAAAAAAAAAAAAAAAAAD/////AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAA + AP8AAAD/AAAA/wAAAP//////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP7+ + /gudtI5FRHEmhMbUvS7+/v4CAAAAAAAAAAAAAAAAAAAAAP////8AAAD/AAAA/wAAAP8AAAD/AAAA/wAA + AP8AAAD/AAAA/wAAAP8AAAD/AAAA//////8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAD///8B7PDpJmOJS5s4aBnEjal8Wf39/A8AAAAAAAAAAAAAAAAAAAAA/////wAAAP8AAAD/AAAA/wAA + AP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD//////wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAP7+/ga3ya0+PGsexzdnGO9Vfjut4OfcLP///wIAAAAAAAAAAAAAAAD/////AAAA/wAA + AP8AAAD/AAAA////////////////////////////////////////////AAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAD///8B+vv6Fn+ea3E2ZhfeN2cY/DhnGc+nvJpJ/v7+CQAAAAAAAAAAAAAAAP// + //8AAAD/AAAA/wAAAP8AAAD//////wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAP/+/gLU3s0vSHQstTZmF/Y2Zhf+NmYX6G2QV4zy9fAg////AQAA + AAAAAAAA/////wAAAP8AAAD/AAAA/wAAAP//////////////////////////////////////AAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/v7+DJqyilI1ZhbTNmYW/TZmF/82Zhf5P20hwMDP + tzj+/v4EAAAAAAAAAAD/////AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA//// + //8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP///wLr7+cpX4ZFpTVmFfA2ZhX/NmYW/zZm + Fv42ZhfZh6N0ZPz9/BL+/v4BAAAAAP////8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAA + AP8AAAD//////wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/v7+B7TGqEI6ahnMNmcV/DZn + Ff82ZhX/NmYV/zVlF/RPeTOw2+TWLf7+/gIAAAAA/////wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAA + AP8AAAD/AAAA/wAAAP//////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP///wH4+vgZeppleTVm + FOE2ZxX+NmcV/zZnFf82ZhX/NmYV/TZmFtGhuJNO/v7+CgAAAAD/////AAAA/wAAAP8AAAD/AAAA//// + //////////////////////////////////8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/v7+As/b + yDBGcyi3NWYU9zVmFP82ZxX/NmcV/zZnFf82ZxX+NWYV7GeMT5fv8+0k////Af////8AAAD/AAAA/wAA + AP8AAAD//////wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAD+/v4Mlq+FVDRlE9Q1ZhT9NWYU/zVmFP82ZxX/NmcV/zZnFf82ZxX7PWwdxbzMsTz+/v4F/////wAA + AP8AAAD/AAAA/wAAAP///////////////////////////////////////////wAAAAAAAAAAAAAAAAAA + AAAAAAAA////Auju5Stbg0GqNWUU8jVmFP81ZhT/NWYU/zVmFP82ZxX/NmcV/zZnFf41ZhTdgqBubfv8 + +hX/////AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP//////AAAAAAAA + AAAAAAAAAAAAAAAAAAD+/v4HscOlRThoGM41ZhT9NWYU/zVmFP81ZhT/NWYU/zVmFP82ZxX/NmcV/zVm + FPVLdy6z1+DQL/7+/v8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA//// + //8AAAAAAAAAAAAAAAAAAAAA////Afj59xt2l2F+NGUT4zVmFP41ZhT/NWYU/zVmFP81ZhT/NWYU/zVm + FP82ZxX/NmcV/TVmFdOctI1R/v7+/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAA + AP8AAAD//////wAAAAAAAAAAAAAAAAAAAAD+/v4CzdnFMURxJbo1ZhT4NWYU/zVmFP81ZhT/NWYU/zVm + FP81ZhT/NWYU/zVmFP82ZxX/NWYU7mKISZ/8/Pv///////////////////////////////////////// + ////////////////////////AAAAAAAAAAAAAAAAAAAAAP7+/gyUroNUNGUT1DVmFP01ZhT/NWYU/zVm + FP81ZhT/NWYU/zVmFP81ZhT/NWYU/zVmFP82ZxX8O2obybfIq0L+/v4I/v7+Av39/QL9/v0C/f79Av3+ + /QL9/v0C/f79Av3+/QL9/v0C/f79Av3+/QL9/v0C/f79AgAAAAD///8C5uziK1mBPqs0ZRPzNWYU/zVm + FP81ZhT/NWYU/zVmFP81ZhT/NWYU/zVmFP81ZhT/NWYU/zZnFf41ZhThepplhNTezUPZ4tM12eLTNdni + 0zXZ4tM12eLTNdni1DXZ4tQ12eLUNdrj1DXa49U12eLUNdrj1DXa49U1AAAAAP7+/givwqJGN2cWzjVm + FP01ZhT/NWYU/zVmFP81ZhT/NGYT/zVmFP41ZhT/NWYU/zVmFP81ZhT/NWYU/zZnFfg1ZhThRHImz0Rx + JspEcSfKRXEoykVyKMpFcinKRnMqykd0K8pIdCvKSXUsykt3LspIdCvKSXUsykt3Lsr//v8B9vj1HXSW + XoM0ZRPlNWYU/jVmFP81ZhT/NWYU/zVmFP82ZhX0U3w34DRlE/Q1ZhT/NWYU/zVmFP81ZhT/NWYU/zZn + Ff42ZxX9NmYV/TZmFv02Zhf9NmYX/TdnGP03Zxj9OWgZ/TppGv06ahv9PGwd/TppGv06ahv9PGwd/f7/ + /gLK1sIyQnAkuzRlE/g1ZhT/NWYU/zVmFP81ZhT/NWYU+0dzKc2gt5GGP24g0zVmFP01ZhT/NWYU/zVm + FP81ZhT/NmcV/zZnFf82ZxX/NmYW/zZmF/82Zhf/N2cY/zdnGP84aBn/Omka/zpqG/87axz/Omka/zpq + G/87axz//f79DY+qflc0ZRPVNWYU/TVmFP81ZhT/NWYU/zVmFP41ZRTraY1RluLp3k1fhkWnNGUT8TVm + FP81ZhT/NWYU/zVmFP81ZhT/NmcV/zZnFf82ZhX/NmYW/zZmF/83Zxf/N2cY/zhoGf85aRr/Omob/ztr + HP85aRr/Omob/ztrHP/j6t8rVn88rDRlFPM1ZhT/NWYU/zVmFP81ZhT/NWYU/jRlE9KWr4VN/f39F5Cq + flU0ZRPVNWYU/jVmFP81ZhT/NWYU/zVmFP82ZxX/NmcV/zZmFf82Zhb/NmYX/zZmF/83Zxj/N2cY/zlp + Gv86ahv/O2sc/zlpGv86ahv/O2sc/6zAn0c3ZxbPNWYU/TVmFP81ZhT/NWYU/zVmFP81ZhT9PWwdycPS + ujb+/v4EwtC4Nz1sHco1ZhT9NWYU/zVmFP81ZhT/NWYU/zZnFf82ZxX/NmYV/zZmFv82Zhf/NmYX/zdn + GP83Zxj/OWka/zpqG/86ahv/OWka/zpqG/86ahv/cpRchjRlE+Y1ZhT+NWYU/zVmFP81ZhT/NWYU/zVm + FPZXgDyz6e7mLv///wPp7uYsWYE+rzVmFPQ1ZhT/NWYU/zVmFP81ZhT/NmcV/zZnFf82ZhT/NmYV/zZm + F/82Zhf/N2cX/zdnGP85aRr/Omob/zpqG/85aRr/Omob/zpqG/9BbyK6NGUU9jVmFP01ZhT9NWYU/TVm + FP01ZhT8NGUT3IGgbW78/PwW////Af39/RGJpXZiNGUT2DVmFPw1ZhT9NGUT/TVmFP02ZxX9NmcV/TZm + Ff02ZhX9NmYX/TZmF/03Zxf9N2cY/ThoGf06aRr9Omob/ThoGf06aRr9Omob/TZnFaE2ZxXINmcVyjZn + Fco2ZxXKNmcVyjZnFck4aBijr8KiNP7+/gUAAAAA/v7+A7rKrzA7ahuiNmcVyTZnFco2ZxXKN2cWyjdo + Fso3aBbKN2gWyjdnF8o3ZxjKOGcZyjhoGco5aBrKOmobyjtrHMo8ax3KOmobyjtrHMo8ax3KscSkKrHE + pDWxxKQ1scSkNbHEpDWxxKQ1scSkNbTGqCru8uwM///+AQAAAAAAAAAA8/bxC7bHqiqxxKQ1scSkNbHE + pDWxxKQ1scSlNbHEpTWxxKU1scSlNbHEpTWxxKU1scSmNbLEpjWyxaY1s8WnNbPFpzWyxaY1s8WnNbPF + pzX///8C////Av///wL///8C////Av///wL///8C////AgAAAAAAAAAAAAAAAAAAAAAAAAAA////Av// + /wL///8C////Av///wL///8C////Av///wL///8C////Av///wL///8C////Av///wL///8C////AgAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAA////////gAP//4AD/9+AA/+fgAP/j4AD/4+B//8HgAf/B4AH/geAB/4D + gAf+A4AH/AGB//wBgAP4AYAD+ACAA/gAgAPwAAAD8AB//+AAP//gAAAAwAAAAMAAAADAIAAAgHAAAIBw + AAAAcAAAAPgAAAD4AAD///////////////8= +</value> + </data> +</root> \ No newline at end of file diff --git a/VECTO/GUI/HybridStratebyParamsForm.vb b/VECTO/GUI/HybridStratebyParamsForm.vb new file mode 100644 index 0000000000000000000000000000000000000000..ddd7d74dfb4f7993659d4f0bc9ec1fb706758b75 --- /dev/null +++ b/VECTO/GUI/HybridStratebyParamsForm.vb @@ -0,0 +1,355 @@ + +Imports System.Drawing.Imaging +Imports System.IO +Imports System.Linq +Imports System.Windows.Forms.DataVisualization.Charting +Imports TUGraz.VectoCommon.InputData +Imports TUGraz.VectoCommon.Models +Imports TUGraz.VectoCommon.Utils +Imports TUGraz.VectoCore.InputData.FileIO.JSON +Imports TUGraz.VectoCore.InputData.Reader.ComponentData +Imports TUGraz.VectoCore.Models.Declaration +Imports TUGraz.VectoCore.Models.SimulationComponent.Data +Imports TUGraz.VectoCore.Models.SimulationComponent.Data.Battery +Imports TUGraz.VectoCore.Models.SimulationComponent.Data.Engine +Imports TUGraz.VectoCore.Utils +' Copyright 2017 European Union. +' Licensed under the EUPL (the 'Licence'); +' +' * You may not use this work except in compliance with the Licence. +' * You may obtain a copy of the Licence at: http://ec.europa.eu/idabc/eupl +' * Unless required by applicable law or agreed to in writing, +' software distributed under the Licence is distributed on an "AS IS" basis, +' WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +' +' See the LICENSE.txt for the specific language governing permissions and limitations. + +''' <summary> +''' Engine Editor. Open and save .VENG files. +''' </summary> +''' <remarks></remarks> +Public Class HybridStrategyParamsForm + Private _strategyParamsFile As String = "" + Public AutoSendTo As Boolean = False + Public JobDir As String = "" + Private _changed As Boolean = False + + Private _contextMenuFiles As String() + + + + + 'Before closing Editor: Check if file was changed and ask to save. + Private Sub F_ENG_FormClosing(sender As Object, e As FormClosingEventArgs) Handles Me.FormClosing + If e.CloseReason <> CloseReason.ApplicationExitCall And e.CloseReason <> CloseReason.WindowsShutDown Then + e.Cancel = ChangeCheckCancel() + End If + End Sub + + 'Initialise. + Private Sub EngineFormLoad(sender As Object, e As EventArgs) Handles Me.Load + + ' initialize form on load - nothng to do right now + + 'pnInertia.Enabled = Not Cfg.DeclMode + + + _changed = False + + + NewEngine() + End Sub + + 'Set generic values for Declaration mode. + Private Sub DeclInit() + + If Not Cfg.DeclMode Then Exit Sub + + + + End Sub + + +#Region "Toolbar" + + Private Sub ToolStripBtNew_Click(sender As Object, e As EventArgs) Handles ToolStripBtNew.Click + NewEngine() + End Sub + + Private Sub ToolStripBtOpen_Click(sender As Object, e As EventArgs) Handles ToolStripBtOpen.Click + If EngineFileBrowser.OpenDialog(_strategyParamsFile) Then + Try + OpenHybridStrategyParametersFile(EngineFileBrowser.Files(0)) + Catch ex As Exception + MsgBox(ex.Message, MsgBoxStyle.OkOnly, "Error loading Engine File") + End Try + End If + End Sub + + Private Sub ToolStripBtSave_Click(sender As Object, e As EventArgs) Handles ToolStripBtSave.Click + SaveOrSaveAs(False) + End Sub + + Private Sub ToolStripBtSaveAs_Click(sender As Object, e As EventArgs) Handles ToolStripBtSaveAs.Click + SaveOrSaveAs(True) + End Sub + + Private Sub ToolStripBtSendTo_Click(sender As Object, e As EventArgs) Handles ToolStripBtSendTo.Click + + If ChangeCheckCancel() Then Exit Sub + + If _strategyParamsFile = "" Then + If MsgBox("Save file now?", MsgBoxStyle.YesNo) = MsgBoxResult.Yes Then + If Not SaveOrSaveAs(True) Then Exit Sub + Else + Exit Sub + End If + End If + + If Not VectoJobForm.Visible Then + JobDir = "" + VectoJobForm.Show() + VectoJobForm.VectoNew() + Else + VectoJobForm.WindowState = FormWindowState.Normal + End If + + VectoJobForm.TbENG.Text = GetFilenameWithoutDirectory(_strategyParamsFile, JobDir) + End Sub + + Private Sub ToolStripButton1_Click(sender As Object, e As EventArgs) Handles ToolStripButton1.Click + If File.Exists(Path.Combine(MyAppPath, "User Manual\help.html")) Then + Dim defaultBrowserPath As String = BrowserUtils.GetDefaultBrowserPath() + Process.Start(defaultBrowserPath, + String.Format("""file://{0}""", Path.Combine(MyAppPath, "User Manual\help.html#engine-editor"))) + Else + MsgBox("User Manual not found!", MsgBoxStyle.Critical) + End If + End Sub + +#End Region + + 'Create new empty Engine file. + Private Sub NewEngine() + + If ChangeCheckCancel() Then Exit Sub + + + tbEquivalenceFactor.Text = "" + tbMinSoC.Text = "" + tbMaxSoC.Text = "" + tbTargetSoC.Text = "" + tbauxBufferTime.Text = "" + tbAuxBufferChargeTime.Text = "" + + DeclInit() + + _strategyParamsFile = "" + Text = "Hybrid Strategy Parameters Editor" + LbStatus.Text = "" + + _changed = False + End Sub + + 'Open VENG file + Public Sub OpenHybridStrategyParametersFile(file As String) + Dim strategyParams As IHybridStrategyParameters + + If ChangeCheckCancel() Then Exit Sub + + Dim inputData As IEngineeringInputDataProvider = TryCast(JSONInputDataFactory.ReadComponentData(file), + IEngineeringInputDataProvider) + + strategyParams = inputData.JobInputData.HybridStrategyParameters + + If Not Cfg.DeclMode Then + Select Case WrongMode() + Case 1 + Close() + MainForm.RbDecl.Checked = Not MainForm.RbDecl.Checked + MainForm.OpenVectoFile(file) + Case -1 + Exit Sub + End Select + End If + + Dim basePath As String = Path.GetDirectoryName(file) + + tbEquivalenceFactor.Text = strategyParams.EquivalenceFactor.ToGUIFormat() + + tbEquivalenceFactor.Text = strategyParams.EquivalenceFactor.ToGUIFormat() + tbMinSoC.Text = (strategyParams.MinSoC * 100).ToGUIFormat() + tbMaxSoC.Text = (strategyParams.MaxSoC * 100).ToGUIFormat() + tbTargetSoC.Text = (strategyParams.MaxSoC * 100).ToGUIFormat() + + 'tbAuxBufferChargeTime = strategyParams. + 'tbauxBufferTime = strategyParams. + + DeclInit() + + BatteryFileBrowser.UpdateHistory(file) + Text = GetFilenameWithoutPath(file, True) + LbStatus.Text = "" + _strategyParamsFile = file + Activate() + + _changed = False + End Sub + + 'Save or Save As function = true if file is saved + Private Function SaveOrSaveAs(ByVal saveAs As Boolean) As Boolean + If _strategyParamsFile = "" Or saveAs Then + If HCUFileBrowser.SaveDialog(_strategyParamsFile) Then + _strategyParamsFile = HCUFileBrowser.Files(0) + Else + Return False + End If + End If + Return SaveParamsToFile(_strategyParamsFile) + End Function + + 'Save VENG file to given filepath. Called by SaveOrSaveAs. + Private Function SaveParamsToFile(ByVal file As String) As Boolean + + Dim strategyParams As HybridStrategyParams = New HybridStrategyParams + strategyParams.FilePath = file + + + strategyParams.EquivalenceFactor = tbEquivalenceFactor.Text.ToDouble(0) + + strategyParams.MinSoC = tbMinSoC.Text.ToDouble(0) / 100 + strategyParams.MaxSoC = tbMaxSoC.Text.ToDouble(0) / 100 + strategyParams.TargetSoC = tbTargetSoC.Text.ToDouble(0) / 100 + + strategyParams.AuxBufferTime = tbauxBufferTime.Text.ToDouble(0) + strategyParams.AuxBufferChgTime = tbAuxBufferChargeTime.Text.ToDouble(0) + + If Not strategyParams.SaveFile Then + MsgBox("Cannot save to " & file, MsgBoxStyle.Critical) + Return False + End If + + HCUFileBrowser.UpdateHistory(file) + Text = GetFilenameWithoutPath(file, True) + LbStatus.Text = "" + + _changed = False + + Return True + End Function + + +#Region "Track changes" + + 'Flags current file as modified. + Private Sub Change() + If Not _changed Then + LbStatus.Text = "Unsaved changes in current file" + _changed = True + End If + End Sub + + ' "Save changes ?" .... Returns True if User aborts + Private Function ChangeCheckCancel() As Boolean + + If _changed Then + Select Case MsgBox("Save changes ?", MsgBoxStyle.YesNoCancel) + Case MsgBoxResult.Yes + Return Not SaveOrSaveAs(False) + Case MsgBoxResult.Cancel + Return True + Case Else 'MsgBoxResult.No + _changed = False + Return False + End Select + + Else + + Return False + + End If + End Function + + + + + + +#End Region + + + + 'Save and close + Private Sub ButOK_Click(sender As Object, e As EventArgs) Handles ButOK.Click + If SaveOrSaveAs(False) Then Close() + End Sub + + 'Close without saving (see FormClosing Event) + Private Sub ButCancel_Click(sender As Object, e As EventArgs) Handles ButCancel.Click + Close() + End Sub + + +#Region "Open File Context Menu" + + + Private Sub OpenFiles(ParamArray files() As String) + + If files.Length = 0 Then Exit Sub + + _contextMenuFiles = files + + OpenWithToolStripMenuItem.Text = "Open with " & Cfg.OpenCmdName + + CmOpenFile.Show(Windows.Forms.Cursor.Position) + End Sub + + Private Sub OpenWithToolStripMenuItem_Click(sender As Object, e As EventArgs) _ + Handles OpenWithToolStripMenuItem.Click + If Not FileOpenAlt(_contextMenuFiles(0)) Then MsgBox("Failed to open file!") + End Sub + + Private Sub ShowInFolderToolStripMenuItem_Click(sender As Object, e As EventArgs) _ + Handles ShowInFolderToolStripMenuItem.Click + If File.Exists(_contextMenuFiles(0)) Then + Try + Process.Start("explorer", "/select,""" & _contextMenuFiles(0) & "") + Catch ex As Exception + MsgBox("Failed to open file!") + End Try + Else + MsgBox("File not found!") + End If + End Sub + + Private Sub tbMinSoC_TextChanged(sender As Object, e As EventArgs) Handles tbMinSoC.TextChanged + Change() + End Sub + + Private Sub tbMaxSoC_TextChanged(sender As Object, e As EventArgs) Handles tbMaxSoC.TextChanged + Change() + End Sub + + Private Sub tbTargetSoC_TextChanged(sender As Object, e As EventArgs) Handles tbTargetSoC.TextChanged + Change() + End Sub + + Private Sub tbauxBufferTime_TextChanged(sender As Object, e As EventArgs) Handles tbauxBufferTime.TextChanged + Change() + End Sub + + Private Sub tbAuxBufferChargeTime_TextChanged(sender As Object, e As EventArgs) Handles tbAuxBufferChargeTime.TextChanged + Change() + End Sub + + Private Sub tbEquivalenceFactor_TextChanged(sender As Object, e As EventArgs) Handles tbEquivalenceFactor.TextChanged + Change() + End Sub + +#End Region + + + + + +End Class diff --git a/VECTO/GUI/MainForm.vb b/VECTO/GUI/MainForm.vb index 7253a319501210e95b96940ca42ef8d1578702bd..6b3981cd79a5923eb97f807cb0d96d15d50a3235 100644 --- a/VECTO/GUI/MainForm.vb +++ b/VECTO/GUI/MainForm.vb @@ -149,6 +149,7 @@ Imports TUGraz.VectoCore.Utils ElectricMachineDragTorqueFileBrowser = New FileBrowser("vemd") ElectricMachineMaxTorqueFileBrowser = New FileBrowser("vemp") ElectricMachineEfficiencyMapFileBrowser = New FileBrowser("vemo") + HCUFileBrowser = New FileBrowser("vhctl") BatteryInternalResistanceCurveFileBrowser = New FileBrowser("vbatv") BatterySoCCurveFileBrowser = New FileBrowser("vbatr") @@ -187,6 +188,7 @@ Imports TUGraz.VectoCore.Utils BatteryInternalResistanceCurveFileBrowser.Extensions = New String() {"vbatv"} BatterySoCCurveFileBrowser.Extensions = New String() {"vbatr"} + HCUFileBrowser.Extensions = New String() {"vhctl"} ModalResultsFileBrowser.Extensions = New String() {"vmod"} End Sub diff --git a/VECTO/GUI/VectoJobForm.Designer.vb b/VECTO/GUI/VectoJobForm.Designer.vb index 23ea61842079051350121f4dedae05fdaa0c7ef5..f5bdc3f3369a42897968c51b62a8ebb73fc60c6d 100644 --- a/VECTO/GUI/VectoJobForm.Designer.vb +++ b/VECTO/GUI/VectoJobForm.Designer.vb @@ -28,18 +28,22 @@ Partial Class VectoJobForm Me.components = New System.ComponentModel.Container() Dim resources As System.ComponentModel.ComponentResourceManager = New System.ComponentModel.ComponentResourceManager(GetType(VectoJobForm)) Me.TabPgGen = New System.Windows.Forms.TabPage() - Me.TbShiftStrategyParams = New System.Windows.Forms.TextBox() - Me.BtnShiftParamsForm = New System.Windows.Forms.Button() - Me.BtnShiftStrategyParams = New System.Windows.Forms.Button() - Me.TbGBX = New System.Windows.Forms.TextBox() - Me.TbENG = New System.Windows.Forms.TextBox() - Me.TbVEH = New System.Windows.Forms.TextBox() - Me.ButOpenGBX = New System.Windows.Forms.Button() - Me.ButOpenENG = New System.Windows.Forms.Button() + Me.pnVehicle = New System.Windows.Forms.Panel() Me.ButOpenVEH = New System.Windows.Forms.Button() Me.ButtonVEH = New System.Windows.Forms.Button() - Me.ButtonGBX = New System.Windows.Forms.Button() + Me.TbVEH = New System.Windows.Forms.TextBox() + Me.pnEngine = New System.Windows.Forms.Panel() + Me.ButOpenENG = New System.Windows.Forms.Button() Me.ButtonMAP = New System.Windows.Forms.Button() + Me.TbENG = New System.Windows.Forms.TextBox() + Me.pnGearbox = New System.Windows.Forms.Panel() + Me.ButOpenGBX = New System.Windows.Forms.Button() + Me.ButtonGBX = New System.Windows.Forms.Button() + Me.TbGBX = New System.Windows.Forms.TextBox() + Me.pnShiftParams = New System.Windows.Forms.Panel() + Me.BtnShiftParamsForm = New System.Windows.Forms.Button() + Me.TbShiftStrategyParams = New System.Windows.Forms.TextBox() + Me.BtnShiftStrategyParams = New System.Windows.Forms.Button() Me.GrCycles = New System.Windows.Forms.GroupBox() Me.Label2 = New System.Windows.Forms.Label() Me.LvCycles = New System.Windows.Forms.ListView() @@ -181,11 +185,16 @@ Partial Class VectoJobForm Me.lblEngineCharacteristics = New System.Windows.Forms.Label() Me.lblTitle = New System.Windows.Forms.Label() Me.pnJobInfo = New System.Windows.Forms.Panel() - Me.pnShiftParams = New System.Windows.Forms.Panel() - Me.pnGearbox = New System.Windows.Forms.Panel() - Me.pnEngine = New System.Windows.Forms.Panel() - Me.pnVehicle = New System.Windows.Forms.Panel() + Me.pnHybridStrategy = New System.Windows.Forms.Panel() + Me.btnOpenHybridStrategyParameters = New System.Windows.Forms.Button() + Me.tbHybridStrategyParams = New System.Windows.Forms.TextBox() + Me.btnBrowseHybridStrategyParams = New System.Windows.Forms.Button() + Me.Label46 = New System.Windows.Forms.Label() Me.TabPgGen.SuspendLayout() + Me.pnVehicle.SuspendLayout() + Me.pnEngine.SuspendLayout() + Me.pnGearbox.SuspendLayout() + Me.pnShiftParams.SuspendLayout() Me.GrCycles.SuspendLayout() Me.GrAuxMech.SuspendLayout() CType(Me.picAuxInfo, System.ComponentModel.ISupportInitialize).BeginInit() @@ -211,14 +220,12 @@ Partial Class VectoJobForm CType(Me.PicVehicle, System.ComponentModel.ISupportInitialize).BeginInit() CType(Me.PicBox, System.ComponentModel.ISupportInitialize).BeginInit() Me.pnJobInfo.SuspendLayout() - Me.pnShiftParams.SuspendLayout() - Me.pnGearbox.SuspendLayout() - Me.pnEngine.SuspendLayout() - Me.pnVehicle.SuspendLayout() + Me.pnHybridStrategy.SuspendLayout() Me.SuspendLayout() ' 'TabPgGen ' + Me.TabPgGen.Controls.Add(Me.pnHybridStrategy) Me.TabPgGen.Controls.Add(Me.pnVehicle) Me.TabPgGen.Controls.Add(Me.pnEngine) Me.TabPgGen.Controls.Add(Me.pnGearbox) @@ -231,53 +238,36 @@ Partial Class VectoJobForm Me.TabPgGen.Text = "General" Me.TabPgGen.UseVisualStyleBackColor = True ' - 'TbShiftStrategyParams - ' - Me.TbShiftStrategyParams.Anchor = CType(((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Left) _ - Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.TbShiftStrategyParams.Location = New System.Drawing.Point(81, 3) - Me.TbShiftStrategyParams.Name = "TbShiftStrategyParams" - Me.TbShiftStrategyParams.Size = New System.Drawing.Size(406, 20) - Me.TbShiftStrategyParams.TabIndex = 12 - ' - 'BtnShiftParamsForm - ' - Me.BtnShiftParamsForm.Location = New System.Drawing.Point(3, 3) - Me.BtnShiftParamsForm.Name = "BtnShiftParamsForm" - Me.BtnShiftParamsForm.Size = New System.Drawing.Size(72, 21) - Me.BtnShiftParamsForm.TabIndex = 11 - Me.BtnShiftParamsForm.TabStop = False - Me.BtnShiftParamsForm.Text = "Shift Parameters" - Me.BtnShiftParamsForm.UseVisualStyleBackColor = True - ' - 'BtnShiftStrategyParams + 'pnVehicle ' - Me.BtnShiftStrategyParams.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.BtnShiftStrategyParams.Image = CType(resources.GetObject("BtnShiftStrategyParams.Image"), System.Drawing.Image) - Me.BtnShiftStrategyParams.Location = New System.Drawing.Point(489, 1) - Me.BtnShiftStrategyParams.Name = "BtnShiftStrategyParams" - Me.BtnShiftStrategyParams.Size = New System.Drawing.Size(24, 24) - Me.BtnShiftStrategyParams.TabIndex = 13 - Me.BtnShiftStrategyParams.TabStop = False - Me.BtnShiftStrategyParams.UseVisualStyleBackColor = True + Me.pnVehicle.Controls.Add(Me.ButOpenVEH) + Me.pnVehicle.Controls.Add(Me.ButtonVEH) + Me.pnVehicle.Controls.Add(Me.TbVEH) + Me.pnVehicle.Location = New System.Drawing.Point(4, 7) + Me.pnVehicle.Name = "pnVehicle" + Me.pnVehicle.Size = New System.Drawing.Size(518, 27) + Me.pnVehicle.TabIndex = 17 ' - 'TbGBX + 'ButOpenVEH ' - Me.TbGBX.Anchor = CType(((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Left) _ - Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.TbGBX.Location = New System.Drawing.Point(82, 3) - Me.TbGBX.Name = "TbGBX" - Me.TbGBX.Size = New System.Drawing.Size(404, 20) - Me.TbGBX.TabIndex = 7 + Me.ButOpenVEH.Location = New System.Drawing.Point(4, 3) + Me.ButOpenVEH.Name = "ButOpenVEH" + Me.ButOpenVEH.Size = New System.Drawing.Size(72, 21) + Me.ButOpenVEH.TabIndex = 0 + Me.ButOpenVEH.TabStop = False + Me.ButOpenVEH.Text = "Vehicle" + Me.ButOpenVEH.UseVisualStyleBackColor = True ' - 'TbENG + 'ButtonVEH ' - Me.TbENG.Anchor = CType(((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Left) _ - Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.TbENG.Location = New System.Drawing.Point(82, 3) - Me.TbENG.Name = "TbENG" - Me.TbENG.Size = New System.Drawing.Size(404, 20) - Me.TbENG.TabIndex = 4 + Me.ButtonVEH.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) + Me.ButtonVEH.Image = CType(resources.GetObject("ButtonVEH.Image"), System.Drawing.Image) + Me.ButtonVEH.Location = New System.Drawing.Point(492, 2) + Me.ButtonVEH.Name = "ButtonVEH" + Me.ButtonVEH.Size = New System.Drawing.Size(24, 24) + Me.ButtonVEH.TabIndex = 2 + Me.ButtonVEH.TabStop = False + Me.ButtonVEH.UseVisualStyleBackColor = True ' 'TbVEH ' @@ -288,15 +278,15 @@ Partial Class VectoJobForm Me.TbVEH.Size = New System.Drawing.Size(404, 20) Me.TbVEH.TabIndex = 1 ' - 'ButOpenGBX + 'pnEngine ' - Me.ButOpenGBX.Location = New System.Drawing.Point(4, 3) - Me.ButOpenGBX.Name = "ButOpenGBX" - Me.ButOpenGBX.Size = New System.Drawing.Size(72, 21) - Me.ButOpenGBX.TabIndex = 6 - Me.ButOpenGBX.TabStop = False - Me.ButOpenGBX.Text = "Gearbox" - Me.ButOpenGBX.UseVisualStyleBackColor = True + Me.pnEngine.Controls.Add(Me.ButOpenENG) + Me.pnEngine.Controls.Add(Me.ButtonMAP) + Me.pnEngine.Controls.Add(Me.TbENG) + Me.pnEngine.Location = New System.Drawing.Point(4, 37) + Me.pnEngine.Name = "pnEngine" + Me.pnEngine.Size = New System.Drawing.Size(519, 27) + Me.pnEngine.TabIndex = 16 ' 'ButOpenENG ' @@ -308,26 +298,45 @@ Partial Class VectoJobForm Me.ButOpenENG.Text = "Engine" Me.ButOpenENG.UseVisualStyleBackColor = True ' - 'ButOpenVEH + 'ButtonMAP ' - Me.ButOpenVEH.Location = New System.Drawing.Point(4, 3) - Me.ButOpenVEH.Name = "ButOpenVEH" - Me.ButOpenVEH.Size = New System.Drawing.Size(72, 21) - Me.ButOpenVEH.TabIndex = 0 - Me.ButOpenVEH.TabStop = False - Me.ButOpenVEH.Text = "Vehicle" - Me.ButOpenVEH.UseVisualStyleBackColor = True + Me.ButtonMAP.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) + Me.ButtonMAP.Image = CType(resources.GetObject("ButtonMAP.Image"), System.Drawing.Image) + Me.ButtonMAP.Location = New System.Drawing.Point(492, 1) + Me.ButtonMAP.Name = "ButtonMAP" + Me.ButtonMAP.Size = New System.Drawing.Size(24, 24) + Me.ButtonMAP.TabIndex = 5 + Me.ButtonMAP.TabStop = False + Me.ButtonMAP.UseVisualStyleBackColor = True ' - 'ButtonVEH + 'TbENG ' - Me.ButtonVEH.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.ButtonVEH.Image = CType(resources.GetObject("ButtonVEH.Image"), System.Drawing.Image) - Me.ButtonVEH.Location = New System.Drawing.Point(492, 2) - Me.ButtonVEH.Name = "ButtonVEH" - Me.ButtonVEH.Size = New System.Drawing.Size(24, 24) - Me.ButtonVEH.TabIndex = 2 - Me.ButtonVEH.TabStop = False - Me.ButtonVEH.UseVisualStyleBackColor = True + Me.TbENG.Anchor = CType(((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Left) _ + Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) + Me.TbENG.Location = New System.Drawing.Point(82, 3) + Me.TbENG.Name = "TbENG" + Me.TbENG.Size = New System.Drawing.Size(404, 20) + Me.TbENG.TabIndex = 4 + ' + 'pnGearbox + ' + Me.pnGearbox.Controls.Add(Me.ButOpenGBX) + Me.pnGearbox.Controls.Add(Me.ButtonGBX) + Me.pnGearbox.Controls.Add(Me.TbGBX) + Me.pnGearbox.Location = New System.Drawing.Point(3, 66) + Me.pnGearbox.Name = "pnGearbox" + Me.pnGearbox.Size = New System.Drawing.Size(517, 28) + Me.pnGearbox.TabIndex = 15 + ' + 'ButOpenGBX + ' + Me.ButOpenGBX.Location = New System.Drawing.Point(4, 3) + Me.ButOpenGBX.Name = "ButOpenGBX" + Me.ButOpenGBX.Size = New System.Drawing.Size(72, 21) + Me.ButOpenGBX.TabIndex = 6 + Me.ButOpenGBX.TabStop = False + Me.ButOpenGBX.Text = "Gearbox" + Me.ButOpenGBX.UseVisualStyleBackColor = True ' 'ButtonGBX ' @@ -340,16 +349,54 @@ Partial Class VectoJobForm Me.ButtonGBX.TabStop = False Me.ButtonGBX.UseVisualStyleBackColor = True ' - 'ButtonMAP + 'TbGBX ' - Me.ButtonMAP.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.ButtonMAP.Image = CType(resources.GetObject("ButtonMAP.Image"), System.Drawing.Image) - Me.ButtonMAP.Location = New System.Drawing.Point(492, 1) - Me.ButtonMAP.Name = "ButtonMAP" - Me.ButtonMAP.Size = New System.Drawing.Size(24, 24) - Me.ButtonMAP.TabIndex = 5 - Me.ButtonMAP.TabStop = False - Me.ButtonMAP.UseVisualStyleBackColor = True + Me.TbGBX.Anchor = CType(((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Left) _ + Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) + Me.TbGBX.Location = New System.Drawing.Point(82, 3) + Me.TbGBX.Name = "TbGBX" + Me.TbGBX.Size = New System.Drawing.Size(404, 20) + Me.TbGBX.TabIndex = 7 + ' + 'pnShiftParams + ' + Me.pnShiftParams.Controls.Add(Me.BtnShiftParamsForm) + Me.pnShiftParams.Controls.Add(Me.TbShiftStrategyParams) + Me.pnShiftParams.Controls.Add(Me.BtnShiftStrategyParams) + Me.pnShiftParams.Location = New System.Drawing.Point(4, 96) + Me.pnShiftParams.Name = "pnShiftParams" + Me.pnShiftParams.Size = New System.Drawing.Size(516, 26) + Me.pnShiftParams.TabIndex = 14 + ' + 'BtnShiftParamsForm + ' + Me.BtnShiftParamsForm.Location = New System.Drawing.Point(3, 3) + Me.BtnShiftParamsForm.Name = "BtnShiftParamsForm" + Me.BtnShiftParamsForm.Size = New System.Drawing.Size(72, 21) + Me.BtnShiftParamsForm.TabIndex = 11 + Me.BtnShiftParamsForm.TabStop = False + Me.BtnShiftParamsForm.Text = "Shift Parameters" + Me.BtnShiftParamsForm.UseVisualStyleBackColor = True + ' + 'TbShiftStrategyParams + ' + Me.TbShiftStrategyParams.Anchor = CType(((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Left) _ + Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) + Me.TbShiftStrategyParams.Location = New System.Drawing.Point(81, 3) + Me.TbShiftStrategyParams.Name = "TbShiftStrategyParams" + Me.TbShiftStrategyParams.Size = New System.Drawing.Size(406, 20) + Me.TbShiftStrategyParams.TabIndex = 12 + ' + 'BtnShiftStrategyParams + ' + Me.BtnShiftStrategyParams.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) + Me.BtnShiftStrategyParams.Image = CType(resources.GetObject("BtnShiftStrategyParams.Image"), System.Drawing.Image) + Me.BtnShiftStrategyParams.Location = New System.Drawing.Point(489, 1) + Me.BtnShiftStrategyParams.Name = "BtnShiftStrategyParams" + Me.BtnShiftStrategyParams.Size = New System.Drawing.Size(24, 24) + Me.BtnShiftStrategyParams.TabIndex = 13 + Me.BtnShiftStrategyParams.TabStop = False + Me.BtnShiftStrategyParams.UseVisualStyleBackColor = True ' 'GrCycles ' @@ -626,13 +673,14 @@ Partial Class VectoJobForm Me.tpAuxiliaries.Location = New System.Drawing.Point(4, 22) Me.tpAuxiliaries.Name = "tpAuxiliaries" Me.tpAuxiliaries.Padding = New System.Windows.Forms.Padding(3) - Me.tpAuxiliaries.Size = New System.Drawing.Size(520, 472) + Me.tpAuxiliaries.Size = New System.Drawing.Size(525, 472) Me.tpAuxiliaries.TabIndex = 9 Me.tpAuxiliaries.Text = "Auxiliaries" Me.tpAuxiliaries.UseVisualStyleBackColor = True ' 'gbElectricAux ' + Me.gbElectricAux.Controls.Add(Me.Label46) Me.gbElectricAux.Controls.Add(Me.lblElAuxConstUnit) Me.gbElectricAux.Controls.Add(Me.tbElectricAuxConstant) Me.gbElectricAux.Controls.Add(Me.lblElAuxConst) @@ -674,7 +722,7 @@ Partial Class VectoJobForm Me.tpCycles.Location = New System.Drawing.Point(4, 22) Me.tpCycles.Name = "tpCycles" Me.tpCycles.Padding = New System.Windows.Forms.Padding(3) - Me.tpCycles.Size = New System.Drawing.Size(520, 472) + Me.tpCycles.Size = New System.Drawing.Size(525, 472) Me.tpCycles.TabIndex = 10 Me.tpCycles.Text = "Cycles" Me.tpCycles.UseVisualStyleBackColor = True @@ -688,7 +736,7 @@ Partial Class VectoJobForm Me.TabPgDriver.Location = New System.Drawing.Point(4, 22) Me.TabPgDriver.Name = "TabPgDriver" Me.TabPgDriver.Padding = New System.Windows.Forms.Padding(3) - Me.TabPgDriver.Size = New System.Drawing.Size(520, 472) + Me.TabPgDriver.Size = New System.Drawing.Size(525, 472) Me.TabPgDriver.TabIndex = 7 Me.TabPgDriver.Text = "Driver Model" Me.TabPgDriver.UseVisualStyleBackColor = True @@ -1057,7 +1105,7 @@ Partial Class VectoJobForm Me.TabPgADAS.Controls.Add(Me.gbEngineStopStart) Me.TabPgADAS.Location = New System.Drawing.Point(4, 22) Me.TabPgADAS.Name = "TabPgADAS" - Me.TabPgADAS.Size = New System.Drawing.Size(520, 472) + Me.TabPgADAS.Size = New System.Drawing.Size(525, 472) Me.TabPgADAS.TabIndex = 8 Me.TabPgADAS.Text = "ADAS Parameters" Me.TabPgADAS.UseVisualStyleBackColor = True @@ -1720,45 +1768,55 @@ Partial Class VectoJobForm Me.pnJobInfo.Size = New System.Drawing.Size(397, 471) Me.pnJobInfo.TabIndex = 39 ' - 'pnShiftParams + 'pnHybridStrategy ' - Me.pnShiftParams.Controls.Add(Me.BtnShiftParamsForm) - Me.pnShiftParams.Controls.Add(Me.TbShiftStrategyParams) - Me.pnShiftParams.Controls.Add(Me.BtnShiftStrategyParams) - Me.pnShiftParams.Location = New System.Drawing.Point(4, 96) - Me.pnShiftParams.Name = "pnShiftParams" - Me.pnShiftParams.Size = New System.Drawing.Size(516, 26) - Me.pnShiftParams.TabIndex = 14 + Me.pnHybridStrategy.Controls.Add(Me.btnOpenHybridStrategyParameters) + Me.pnHybridStrategy.Controls.Add(Me.tbHybridStrategyParams) + Me.pnHybridStrategy.Controls.Add(Me.btnBrowseHybridStrategyParams) + Me.pnHybridStrategy.Location = New System.Drawing.Point(4, 125) + Me.pnHybridStrategy.Name = "pnHybridStrategy" + Me.pnHybridStrategy.Size = New System.Drawing.Size(516, 26) + Me.pnHybridStrategy.TabIndex = 15 ' - 'pnGearbox + 'btnOpenHybridStrategyParameters ' - Me.pnGearbox.Controls.Add(Me.ButOpenGBX) - Me.pnGearbox.Controls.Add(Me.ButtonGBX) - Me.pnGearbox.Controls.Add(Me.TbGBX) - Me.pnGearbox.Location = New System.Drawing.Point(3, 66) - Me.pnGearbox.Name = "pnGearbox" - Me.pnGearbox.Size = New System.Drawing.Size(517, 28) - Me.pnGearbox.TabIndex = 15 + Me.btnOpenHybridStrategyParameters.Location = New System.Drawing.Point(3, 3) + Me.btnOpenHybridStrategyParameters.Name = "btnOpenHybridStrategyParameters" + Me.btnOpenHybridStrategyParameters.Size = New System.Drawing.Size(72, 21) + Me.btnOpenHybridStrategyParameters.TabIndex = 11 + Me.btnOpenHybridStrategyParameters.TabStop = False + Me.btnOpenHybridStrategyParameters.Text = "Hyb. Str. P." + Me.btnOpenHybridStrategyParameters.UseVisualStyleBackColor = True ' - 'pnEngine + 'tbHybridStrategyParams ' - Me.pnEngine.Controls.Add(Me.ButOpenENG) - Me.pnEngine.Controls.Add(Me.ButtonMAP) - Me.pnEngine.Controls.Add(Me.TbENG) - Me.pnEngine.Location = New System.Drawing.Point(4, 37) - Me.pnEngine.Name = "pnEngine" - Me.pnEngine.Size = New System.Drawing.Size(519, 27) - Me.pnEngine.TabIndex = 16 - ' - 'pnVehicle - ' - Me.pnVehicle.Controls.Add(Me.ButOpenVEH) - Me.pnVehicle.Controls.Add(Me.ButtonVEH) - Me.pnVehicle.Controls.Add(Me.TbVEH) - Me.pnVehicle.Location = New System.Drawing.Point(4, 7) - Me.pnVehicle.Name = "pnVehicle" - Me.pnVehicle.Size = New System.Drawing.Size(518, 27) - Me.pnVehicle.TabIndex = 17 + Me.tbHybridStrategyParams.Anchor = CType(((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Left) _ + Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) + Me.tbHybridStrategyParams.Location = New System.Drawing.Point(81, 3) + Me.tbHybridStrategyParams.Name = "tbHybridStrategyParams" + Me.tbHybridStrategyParams.Size = New System.Drawing.Size(406, 20) + Me.tbHybridStrategyParams.TabIndex = 12 + ' + 'btnBrowseHybridStrategyParams + ' + Me.btnBrowseHybridStrategyParams.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) + Me.btnBrowseHybridStrategyParams.Image = CType(resources.GetObject("btnBrowseHybridStrategyParams.Image"), System.Drawing.Image) + Me.btnBrowseHybridStrategyParams.Location = New System.Drawing.Point(489, 1) + Me.btnBrowseHybridStrategyParams.Name = "btnBrowseHybridStrategyParams" + Me.btnBrowseHybridStrategyParams.Size = New System.Drawing.Size(24, 24) + Me.btnBrowseHybridStrategyParams.TabIndex = 13 + Me.btnBrowseHybridStrategyParams.TabStop = False + Me.btnBrowseHybridStrategyParams.UseVisualStyleBackColor = True + ' + 'Label46 + ' + Me.Label46.AutoSize = True + Me.Label46.Font = New System.Drawing.Font("Microsoft Sans Serif", 8.25!, System.Drawing.FontStyle.Italic, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) + Me.Label46.Location = New System.Drawing.Point(235, 22) + Me.Label46.Name = "Label46" + Me.Label46.Size = New System.Drawing.Size(106, 13) + Me.Label46.TabIndex = 48 + Me.Label46.Text = "(high voltage system)" ' 'VectoJobForm ' @@ -1782,6 +1840,14 @@ Partial Class VectoJobForm Me.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen Me.Text = "Job Editor" Me.TabPgGen.ResumeLayout(False) + Me.pnVehicle.ResumeLayout(False) + Me.pnVehicle.PerformLayout() + Me.pnEngine.ResumeLayout(False) + Me.pnEngine.PerformLayout() + Me.pnGearbox.ResumeLayout(False) + Me.pnGearbox.PerformLayout() + Me.pnShiftParams.ResumeLayout(False) + Me.pnShiftParams.PerformLayout() Me.GrCycles.ResumeLayout(False) Me.GrCycles.PerformLayout() Me.GrAuxMech.ResumeLayout(False) @@ -1821,14 +1887,8 @@ Partial Class VectoJobForm CType(Me.PicBox, System.ComponentModel.ISupportInitialize).EndInit() Me.pnJobInfo.ResumeLayout(False) Me.pnJobInfo.PerformLayout() - Me.pnShiftParams.ResumeLayout(False) - Me.pnShiftParams.PerformLayout() - Me.pnGearbox.ResumeLayout(False) - Me.pnGearbox.PerformLayout() - Me.pnEngine.ResumeLayout(False) - Me.pnEngine.PerformLayout() - Me.pnVehicle.ResumeLayout(False) - Me.pnVehicle.PerformLayout() + Me.pnHybridStrategy.ResumeLayout(False) + Me.pnHybridStrategy.PerformLayout() Me.ResumeLayout(False) Me.PerformLayout() @@ -1992,4 +2052,9 @@ Partial Class VectoJobForm Friend WithEvents pnEngine As Panel Friend WithEvents pnGearbox As Panel Friend WithEvents pnShiftParams As Panel + Friend WithEvents pnHybridStrategy As Panel + Friend WithEvents btnOpenHybridStrategyParameters As Button + Friend WithEvents tbHybridStrategyParams As TextBox + Friend WithEvents btnBrowseHybridStrategyParams As Button + Friend WithEvents Label46 As Label End Class diff --git a/VECTO/GUI/VectoJobForm.resx b/VECTO/GUI/VectoJobForm.resx index d41812b495c35d8ffb5fea5372a8095d01ba309c..7283bc0faef8b57652feaea6766bca9d2054d232 100644 --- a/VECTO/GUI/VectoJobForm.resx +++ b/VECTO/GUI/VectoJobForm.resx @@ -118,6 +118,24 @@ <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> </resheader> <assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" /> + <data name="btnBrowseHybridStrategyParams.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64"> + <value> + iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAO + vAAADrwBlbxySQAAAtVJREFUOE+FkmtIk2EYhhc6zU1zyjyAlZn5Q0QS6k/EMDDSQiuzkmxM5wpEA00S + zTzbsozQEDUyVKjQbejUPGQSyyjUmofysFRKU/M859J5qORu77s1KX/0wPXju7/vvp4X3o/RVsHv7pDy + 0VklwIfaCPTXCzHQEPkXn5pEUDWJNH31kRGMf4eUocvF7GAShlqjQZ6H3qZjYUICQGliVfscvc+EGmNt + c0hhY/kONpYMrC/cwowqiYowchcYNaKRoa7mDDyfcuFRYpdnrBsEv7S3KT8XCTkUkq/3xGOj9xrQn0Cp + qQrGvnJ7uJTuwK58G4VJ8GMhh25eV29Ccp0yDmvd8SZBV7UA7sW2R5wfWsO+0ApO2ewMKlibE2N11siM + GCt6SL7YEQtdZxxUShECq7wQ9MQLZKnTfbbcqpQJuwxLDRWsTN+EbiobuslsLBsh+eybK3j/WgBfmQeq + 1RKcqPalAgexlYIIrNMtQAVLE1lYGs/Cd8JYJrR6SK5ovoCzjTzI1VLE9gjgVsiBYza7jJvHAhGwkpkG + gfZrJhZHM6D5QtBf4ed0yKSnENLEg0L3AlHKIBxq2Ik9BRy4FNrA4bFBYJlgbhCQgno4DeqhNMwPpuFb + TyICan3waqUF0coAHGtxpwJvuSPcJBwqYBUzwby8TUEF84OpmFOlYnYghR69XcLHUdl+RLX7I6TVc4uA + W8aCZZy5hhnO8KECUpzuu4Gpj8lU0FgShuIHgeAVucK/0d0k8KzgwjGXje0xZiPMS/oyGVIgxcme65jo + MvyBNUWhqMw/j7ryi+Dlu+KwfDcVcNNYEOfx6E2Ypq0iVKN6GYNxZRLG3iVSQXnOcRSk+EGadxK1j4Jx + IMsZPhXOsE+2QnPZOcPmP9MtD+d0SMPkXTVCDLdeRadciPjIg7H6V3sNXzAYtrEMjmW0udxCZFZmjLZO + eyX/NDkNOcG9FD9vY/yfYTB+A9kMOLKC3dXwAAAAAElFTkSuQmCC +</value> + </data> <data name="ButtonVEH.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64"> <value> iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAO @@ -238,6 +256,9 @@ <metadata name="CmOpenFile.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"> <value>350, 15</value> </metadata> + <metadata name="ToolTip1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"> + <value>468, 15</value> + </metadata> <metadata name="$this.TrayHeight" type="System.Int32, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"> <value>49</value> </metadata> diff --git a/VECTO/GUI/VectoJobForm.vb b/VECTO/GUI/VectoJobForm.vb index 2ed42a2e435300c77bf9b05034f3fa1cdd4b540d..945b5885a411cd36bf30ddc4af25b04fe878107b 100644 --- a/VECTO/GUI/VectoJobForm.vb +++ b/VECTO/GUI/VectoJobForm.vb @@ -485,6 +485,9 @@ Public Class VectoJobForm Else TbShiftStrategyParams.Text = GetRelativePath(inputData.DriverInputData.GearshiftInputData.Source, _basePath) End If + If (JobType = VectoSimulationJobType.ParallelHybridVehicle) Then + tbHybridStrategyParams.Text = GetRelativePath(inputData.JobInputData.HybridStrategyParameters.Source, _basePath) + End If 'Start/Stop Dim driver As IDriverEngineeringInputData = inputData.DriverInputData @@ -1138,6 +1141,7 @@ lbDlog: GrAuxMech.Enabled = True pnEngine.Enabled = True pnShiftParams.Enabled = True + pnHybridStrategy.Enabled = False Select Case JobType Case VectoSimulationJobType.ConventionalVehicle gbElectricAux.Enabled = False @@ -1149,9 +1153,8 @@ lbDlog: tpAuxiliaries.Enabled = False pnShiftParams.Enabled = False Case VectoSimulationJobType.ParallelHybridVehicle - pnEngine.Enabled = False - pnGearbox.Enabled = False - GrAuxMech.Enabled = False + ' empty line - do not fall-through + pnHybridStrategy.Enabled = True Case VectoSimulationJobType.BatteryElectricVehicle pnEngine.Enabled = False pnGearbox.Enabled = False @@ -1656,6 +1659,53 @@ lbDlog: Private Sub VectoJobForm_HandleDestroyed(sender As Object, e As EventArgs) Handles Me.HandleDestroyed End Sub + + Private Sub btnBrowseHybridStrategyParams_Click(sender As Object, e As EventArgs) Handles btnBrowseHybridStrategyParams.Click + If HCUFileBrowser.OpenDialog(FileRepl(tbHybridStrategyParams.Text, GetPath(VectoFile))) Then + tbHybridStrategyParams.Text = GetFilenameWithoutDirectory(HCUFileBrowser.Files(0), GetPath(VectoFile)) + End If + End Sub + + Private Sub btnOpenHybridStrategyParameters_Click(sender As Object, e As EventArgs) Handles btnOpenHybridStrategyParameters.Click + Dim f As String + f = FileRepl(tbHybridStrategyParams.Text, GetPath(VectoFile)) + + 'Thus Veh-file is returned + HybridStrategyParamsForm.JobDir = GetPath(VectoFile) + HybridStrategyParamsForm.AutoSendTo = True + + If Not Trim(f) = "" Then + If Not File.Exists(f) Then + MsgBox("File not found!") + Exit Sub + End If + End If + + If Not HybridStrategyParamsForm.Visible Then + HybridStrategyParamsForm.Show() + Else + If HybridStrategyParamsForm.WindowState = FormWindowState.Minimized Then HybridStrategyParamsForm.WindowState = FormWindowState.Normal + HybridStrategyParamsForm.BringToFront() + End If + Dim vehicleType As VehicleCategory + Try + If Not Trim(f) = "" Then + Dim vehInput As IVehicleDeclarationInputData = + CType(JSONInputDataFactory.ReadComponentData(FileRepl(TbVEH.Text, GetPath(VectoFile))), + IEngineeringInputDataProvider).JobInputData.Vehicle + vehicleType = vehInput.VehicleCategory + End If + + Catch ex As Exception + vehicleType = VehicleCategory.RigidTruck + End Try + Try + If Not Trim(f) = "" Then HybridStrategyParamsForm.OpenHybridStrategyParametersFile(f) + Catch ex As Exception + MsgBox("Failed to open Gearbox File: " + ex.Message) + End Try + + End Sub End Class diff --git a/VECTO/Input Files/Battery.vb b/VECTO/Input Files/Battery.vb index 4a09e95b1d831b05c3315986dba984d58f1cf855..e5872052135160b61b4955acc50608ea72d46879 100644 --- a/VECTO/Input Files/Battery.vb +++ b/VECTO/Input Files/Battery.vb @@ -57,7 +57,7 @@ Public Class Battery Dim messages As IEnumerable(Of String) = validationResults.Select(Function(r) r.ErrorMessage + String.Join(", ", r.MemberNames.Distinct())) MsgBox("Invalid input." + Environment.NewLine + String.Join(Environment.NewLine, messages), MsgBoxStyle.OkOnly, - "Failed to save engine") + "Failed to save battery") Return False End If @@ -66,7 +66,7 @@ Public Class Battery writer.SaveBattery(Me, _filePath, Cfg.DeclMode) Catch ex As Exception - MsgBox("Faled to write Engine file: " + ex.Message) + MsgBox("Faled to write Battery file: " + ex.Message) Return False End Try Return True diff --git a/VECTO/Input Files/HybridStrategyParams.vb b/VECTO/Input Files/HybridStrategyParams.vb new file mode 100644 index 0000000000000000000000000000000000000000..02a087295cbe04b87bda554482f7696d25f51139 --- /dev/null +++ b/VECTO/Input Files/HybridStrategyParams.vb @@ -0,0 +1,109 @@ +Imports System.Collections.Generic +Imports System.ComponentModel.DataAnnotations +Imports System.IO +Imports System.Linq +Imports TUGraz.VECTO.Input_Files +Imports TUGraz.VectoCommon.InputData +Imports TUGraz.VectoCommon.Models +Imports TUGraz.VectoCommon.Utils + +Public Class HybridStrategyParams + Implements IHybridStrategyParameters + + Private _filePath As String + Private _myPath As String + + Public Sub New() + _myPath = "" + _filePath = "" + + + + + SetDefault() + End Sub + + Private Sub SetDefault() + + End Sub + + Public Function SaveFile() As Boolean + + Dim validationResults As IList(Of ValidationResult) = + Validate(If(Cfg.DeclMode, ExecutionMode.Declaration, ExecutionMode.Engineering), Nothing, False) + + If validationResults.Count > 0 Then + Dim messages As IEnumerable(Of String) = + validationResults.Select(Function(r) r.ErrorMessage + String.Join(", ", r.MemberNames.Distinct())) + MsgBox("Invalid input." + Environment.NewLine + String.Join(Environment.NewLine, messages), MsgBoxStyle.OkOnly, + "Failed to save strategy parameters") + Return False + End If + + Try + Dim writer As JSONFileWriter = New JSONFileWriter() + writer.SaveStrategyParameters(Me, _filePath, Cfg.DeclMode) + + Catch ex As Exception + MsgBox("Faled to write Strategy Parameters file: " + ex.Message) + Return False + End Try + Return True + End Function + + Public Property FilePath() As String + Get + Return _filePath + End Get + Set(ByVal value As String) + _filePath = value + If _filePath = "" Then + _myPath = "" + Else + _myPath = Path.GetDirectoryName(_filePath) & "\" + End If + End Set + End Property + + Public Property EquivalenceFactor As Double + + Public Property MinSoC As Double + + Public Property MaxSoC As Double + + Public Property TargetSoC As Double + + Public ReadOnly Property Source As String Implements IHybridStrategyParameters.Source + Get + Return FilePath + End Get + End Property + + Public Property AuxBufferTime As Double + + Public Property AuxBufferChgTime As Double + + Private ReadOnly Property IHybridStrategyParameters_EquivalenceFactor As Double Implements IHybridStrategyParameters.EquivalenceFactor + Get + Throw New NotImplementedException() + End Get + End Property + + Private ReadOnly Property IHybridStrategyParameters_MinSoC As Double Implements IHybridStrategyParameters.MinSoC + Get + Throw New NotImplementedException() + End Get + End Property + + Private ReadOnly Property IHybridStrategyParameters_MaxSoC As Double Implements IHybridStrategyParameters.MaxSoC + Get + Throw New NotImplementedException() + End Get + End Property + + Private ReadOnly Property IHybridStrategyParameters_TargetSoC As Double Implements IHybridStrategyParameters.TargetSoC + Get + Throw New NotImplementedException() + End Get + End Property +End Class \ No newline at end of file diff --git a/VECTO/VECTO.vbproj b/VECTO/VECTO.vbproj index 2141c4cb881dfff3f8a3d0b0e20d0f964798a847..46355be9b3bb5ea7e6815e5fc0bde99074978eaa 100644 --- a/VECTO/VECTO.vbproj +++ b/VECTO/VECTO.vbproj @@ -223,6 +223,12 @@ <Compile Include="BusAuxiliaries\Util\DeleteCell.vb" /> <Compile Include="BusAuxiliaries\Util\DeleteColumn.vb" /> <Compile Include="BusAuxiliaries\Util\SIConvert.vb" /> + <Compile Include="GUI\HybridStratebyParamsForm.Designer.vb"> + <DependentUpon>HybridStratebyParamsForm.vb</DependentUpon> + </Compile> + <Compile Include="GUI\HybridStratebyParamsForm.vb"> + <SubType>Form</SubType> + </Compile> <Compile Include="GUI\BatteryForm.Designer.vb"> <DependentUpon>BatteryForm.vb</DependentUpon> </Compile> @@ -328,6 +334,7 @@ <Compile Include="File Browser\FileBrowserFavoritesDialog.vb"> <SubType>Form</SubType> </Compile> + <Compile Include="Input Files\HybridStrategyParams.vb" /> <Compile Include="Input Files\MockComponents.vb" /> <Compile Include="Input Files\MockVehicleInputData.vb" /> <Compile Include="Input Files\VectoEPTPJob.vb" /> @@ -409,6 +416,9 @@ <EmbeddedResource Include="File Browser\FileBrowserFavoritesDialog.resx"> <DependentUpon>FileBrowserFavoritesDialog.vb</DependentUpon> </EmbeddedResource> + <EmbeddedResource Include="GUI\HybridStratebyParamsForm.resx"> + <DependentUpon>HybridStratebyParamsForm.vb</DependentUpon> + </EmbeddedResource> <EmbeddedResource Include="GUI\BatteryForm.resx"> <DependentUpon>BatteryForm.vb</DependentUpon> </EmbeddedResource> diff --git a/VectoCommon/VectoCommon/InputData/EngineeringInputData.cs b/VectoCommon/VectoCommon/InputData/EngineeringInputData.cs index c27e8d22db0b0fa1633271f91a3f54a38d9648ff..bf982d1eb25e4f7c684b5b609e80c6ec277a5b17 100644 --- a/VectoCommon/VectoCommon/InputData/EngineeringInputData.cs +++ b/VectoCommon/VectoCommon/InputData/EngineeringInputData.cs @@ -76,7 +76,9 @@ namespace TUGraz.VectoCommon.InputData double MaxSoC { get; } double TargetSoC { get; } - } + + string Source { get; } + } public interface IVehicleEngineeringInputData : IVehicleDeclarationInputData { diff --git a/VectoCore/VectoCore/Configuration/Constants.cs b/VectoCore/VectoCore/Configuration/Constants.cs index dcbc86c3a796ecd98bf530f636a6dba862ccce03..02604d29985509944fca2d24ff761a5e45fc8247 100644 --- a/VectoCore/VectoCore/Configuration/Constants.cs +++ b/VectoCore/VectoCore/Configuration/Constants.cs @@ -244,6 +244,8 @@ namespace TUGraz.VectoCore.Configuration public const string CycleFile = ".vdri"; public const string DriverAccelerationCurve = ".vacc"; + + public const string HybridStrategyParameters = ".vhctl"; } public static class SimulationSettings diff --git a/VectoCore/VectoCore/InputData/FileIO/JSON/JSONComponentInputData.cs b/VectoCore/VectoCore/InputData/FileIO/JSON/JSONComponentInputData.cs index be8e87c8f403b17eb1ecc98f8519068ca7602bef..6dde8c98f54ab8e94398bed470ec5a791d0c0b1c 100644 --- a/VectoCore/VectoCore/InputData/FileIO/JSON/JSONComponentInputData.cs +++ b/VectoCore/VectoCore/InputData/FileIO/JSON/JSONComponentInputData.cs @@ -89,6 +89,9 @@ namespace TUGraz.VectoCore.InputData.FileIO.JSON case Constants.FileExtensions.ElectricMotorFile: tmp = JSONInputDataFactory.ReadElectricMotorData(filename, tolerateMissing); break; + case Constants.FileExtensions.HybridStrategyParameters: + tmp = JSONInputDataFactory.ReadHybridStrategyParameters(filename, tolerateMissing); + break; } tmp.Switch() @@ -105,7 +108,8 @@ namespace TUGraz.VectoCore.InputData.FileIO.JSON .If<IAxlesDeclarationInputData>(c => _axleWheelsDecl = c) .If<IAxlesEngineeringInputData>(c => _axleWheelsEng = c) .If<IBatteryPackEngineeringInputData>(c => Battery = c) - .If<IElectricMotorEngineeringInputData>(c => { ElectricMotor = c; }); + .If<IElectricMotorEngineeringInputData>(c => { ElectricMotor = c; }) + .If<IHybridStrategyParameters>(c => HybridStrategyParameters = c); ; _filename = filename; } @@ -168,10 +172,7 @@ namespace TUGraz.VectoCore.InputData.FileIO.JSON get { return Vehicle; } } - public IHybridStrategyParameters HybridStrategyParameters - { - get { return null; } - } + public IHybridStrategyParameters HybridStrategyParameters { get; set; } public IVehicleEngineeringInputData Vehicle { diff --git a/VectoCore/VectoCore/OutputData/FileIO/JSONFileWriter.cs b/VectoCore/VectoCore/OutputData/FileIO/JSONFileWriter.cs index 85addd63cd82ea454ab4fe26fa1ee2d117db7acf..07525b09b5ed30ff9303ad1bcbc07b04d2a5ba3b 100644 --- a/VectoCore/VectoCore/OutputData/FileIO/JSONFileWriter.cs +++ b/VectoCore/VectoCore/OutputData/FileIO/JSONFileWriter.cs @@ -34,6 +34,8 @@ public class JSONFileWriter : IOutputFileWriter private const int ElectricMotorFormatVersion = 1; + private const int HybridStrategyParamsVersion = 1; + private static JSONFileWriter _instance; public const string VECTOvers = "3"; @@ -925,4 +927,17 @@ public class JSONFileWriter : IOutputFileWriter } + public void SaveStrategyParameters(IHybridStrategyParameters hp, string filePath, bool declMode) + { + var header = GetHeader(HybridStrategyParamsVersion); + var body = new Dictionary<string, object>() { + {"EquivalenceFactor", hp.EquivalenceFactor}, + {"MinSoC", hp.MinSoC * 100}, + {"MaxSoC", hp.MaxSoC * 100}, + {"TargetSoC", hp.TargetSoC * 100}, + //{"AuxBufferTime", hp.} + //{"AuxBufferChgTime", hp.} + }; + WriteFile(header, body, filePath); + } } diff --git a/VectoCore/VectoCoreTest/TestData/Hybrids/GenericVehicle_Group2_P2/Class2_RigidTruck_ParHyb_ENG.vecto b/VectoCore/VectoCoreTest/TestData/Hybrids/GenericVehicle_Group2_P2/Class2_RigidTruck_ParHyb_ENG.vecto index 41c8833ee75df929998cf1f5e1db30406eefaaf0..2a129faeb753e3cb355018517adcadb1ae389692 100644 --- a/VectoCore/VectoCoreTest/TestData/Hybrids/GenericVehicle_Group2_P2/Class2_RigidTruck_ParHyb_ENG.vecto +++ b/VectoCore/VectoCoreTest/TestData/Hybrids/GenericVehicle_Group2_P2/Class2_RigidTruck_ParHyb_ENG.vecto @@ -16,7 +16,7 @@ "AuxiliaryVersion": "CLASSIC", "AdvancedAuxiliaryFilePath": "", - "HybridStrategyParams": "HybridStrategyParams.vctl", + "HybridStrategyParams": "HybridStrategyParams.vhctl", "Aux": [], "Padd": 3540.0,