From 53a3865523289f265908e2b4b823222b9ec23319 Mon Sep 17 00:00:00 2001 From: Anton Date: Wed, 7 Apr 2021 14:27:10 +0200 Subject: [PATCH] File structure done and appdata generated for user specific data --- HLCt/Parts/START.SLDPRT | Bin 45970 -> 46177 bytes Wardrobe/GUI/AppForm.vb | 39 ++++++++++---- Wardrobe/GUI/Individual.vb | 1 - Wardrobe/GUI/Main_Menu.Designer.vb | 50 ++++++++++++------ Wardrobe/GUI/Main_Menu.vb | 26 +++++++++ Wardrobe/Quote_Export/GUI_Export.vb | 2 +- Wardrobe/SolidWorks/Drawing.vb | 2 +- .../SolidWorks/Individual_Frame_Drawing.vb | 12 ++--- Wardrobe/SolidWorks/Model_3D.vb | 39 ++++++++++++-- 9 files changed, 132 insertions(+), 39 deletions(-) diff --git a/HLCt/Parts/START.SLDPRT b/HLCt/Parts/START.SLDPRT index 496d04928dca4b1711601e809e9f2c0eb665e3ac..d35b9e1f1abaec16e1ba9d10ae0d4304adcd4a74 100644 GIT binary patch delta 18475 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 oL DialogResult.Cancel Then Settings.exportFolder = ofd.SelectedPath + + Dim appData As String() = System.IO.File.ReadAllLines(AppForm.appDataPath & "\SavedData.txt") + Dim appDataList As New List(Of String) + For i = 0 To appData.Length - 1 + appDataList.Add(appData(i)) + Next + + Dim pathUpdated As Boolean = False + For i = 0 To appDataList.Count - 1 + If appDataList(i) = "Export Folder Path" Then + appDataList(i + 1) = ofd.SelectedPath + pathUpdated = True + Exit For + End If + Next + + If pathUpdated = False Then + appDataList.Add("") + appDataList.Add("Export Folder Path") + appDataList.Add(ofd.SelectedPath) + End If + + System.IO.File.WriteAllLines(AppForm.appDataPath & "\SavedData.txt", appDataList.ToArray()) + + Button_Order.Enabled = True + Label_FilePathError.Visible = False End If End Sub diff --git a/Wardrobe/Quote_Export/GUI_Export.vb b/Wardrobe/Quote_Export/GUI_Export.vb index b7b290f..2cd163a 100644 --- a/Wardrobe/Quote_Export/GUI_Export.vb +++ b/Wardrobe/Quote_Export/GUI_Export.vb @@ -39,7 +39,7 @@ Public Class GUI_Export headerTable = doc.Sections(1).Headers(Word.WdHeaderFooterIndex.wdHeaderFooterPrimary).Range. Tables.Add(doc.Sections(1).Headers(Word.WdHeaderFooterIndex.wdHeaderFooterPrimary).Range, 1, 2) - headerTable.Cell(1, 1).Range.InlineShapes.AddPicture(Individual.filepath & "\X2021\Files Needed\Weland_Logo.png") + headerTable.Cell(1, 1).Range.InlineShapes.AddPicture(Settings.HLCtFolder & "\Files Needed\Weland_Logo.png") headerTable.Cell(1, 1).Range.InlineShapes(1).ScaleHeight = 50 headerTable.Cell(1, 1).Range.InlineShapes(1).ScaleWidth = 50 diff --git a/Wardrobe/SolidWorks/Drawing.vb b/Wardrobe/SolidWorks/Drawing.vb index b5265f7..e2bf96b 100644 --- a/Wardrobe/SolidWorks/Drawing.vb +++ b/Wardrobe/SolidWorks/Drawing.vb @@ -160,7 +160,7 @@ Public Class Drawing Dim swSheet As Sheet swSheet = iDrawing.GetCurrentSheet() swSheet.SetProperties2(12, 12, 1, 1, False, swSheetWidth, swSheetHeight, True) - swSheet.SetTemplateName(Individual.filepath & "\X2021\Files Needed\A3 Part.slddrt") + swSheet.SetTemplateName(Settings.HLCtFolder & "\Files Needed\A3 Part.slddrt") swSheet.ReloadTemplate(True) Dim layMgr As LayerMgr diff --git a/Wardrobe/SolidWorks/Individual_Frame_Drawing.vb b/Wardrobe/SolidWorks/Individual_Frame_Drawing.vb index e54df52..08729d4 100644 --- a/Wardrobe/SolidWorks/Individual_Frame_Drawing.vb +++ b/Wardrobe/SolidWorks/Individual_Frame_Drawing.vb @@ -22,15 +22,15 @@ Public Class Individual_Frame_Drawing compNames(j) = Settings.filesFolder & "\Files\CADStart\" & frameComponents(frameID)("partName") & ".SLDPRT" coordNames(j) = "" Next - compNames(compNames.Count - 1) = Settings.folderPaths("object_" & Data.objectNum & "_models3D_frames_sw_support") & "\frame_l_end_piece" & i + 1 & ".SLDPRT" + compNames(compNames.Count - 1) = Settings.folderPaths("object_" & Data.objectNum & "_models3D_frames_sw_support") & "\FRAME_L_END_PIECE" & i + 1 & ".SLDPRT" coordNames(coordNames.Count - 1) = "" Dim assemComps As Object assemComps = assembly.AddComponents3((compNames), (transMatrix), (coordNames)) - longstatus = model.SaveAs3(Settings.folderPaths("object_" & Data.objectNum & "_models3D_gratings_sw_support") & "\frame_assembly" & i + 1 & ".SLDASM", 0, 0) + longstatus = model.SaveAs3(Settings.folderPaths("object_" & Data.objectNum & "_models3D_frames_sw") & "\FRAME_ASSEMBLY" & i + 1 & ".SLDASM", 0, 0) - swApp.CloseDoc(Settings.folderPaths("object_" & Data.objectNum & "_models3D_frames_sw_support") & "\frame_assembly" & i + 1 & ".SLDASM") + swApp.CloseDoc(Settings.folderPaths("object_" & Data.objectNum & "_models3D_frames_sw") & "\FRAME_ASSEMBLY" & i + 1 & ".SLDASM") Next End Sub @@ -50,7 +50,7 @@ Public Class Individual_Frame_Drawing Dim swSheet As Sheet swSheet = iDrawing.GetCurrentSheet() swSheet.SetProperties2(12, 12, 1, 1, False, swSheetWidth, swSheetHeight, True) - swSheet.SetTemplateName(Individual.filepath & "\X2021\Files Needed\A3 Part.slddrt") + swSheet.SetTemplateName(Settings.HLCtFolder & "\Files Needed\A3 Part.slddrt") swSheet.ReloadTemplate(True) swSheet.SetScale(1, 10, False, False) swSheet.SetName("Frame 1") @@ -60,14 +60,14 @@ Public Class Individual_Frame_Drawing For i = 0 To Individual_Frame_3D.cuttingList.Count - 1 If i > 0 Then - status = iDrawing.NewSheet3("Frame" & i + 1, 12, 12, 1, 10, False, Individual.filepath & "\X2021\Files Needed\A3 Part.slddrt", + status = iDrawing.NewSheet3("Frame" & i + 1, 12, 12, 1, 10, False, Settings.HLCtFolder & "\Files Needed\A3 Part.slddrt", swSheetWidth, swSheetHeight, "Same as sheet specified in Document Properties") End If status = layMgr.SetCurrentLayer("Svenska") Dim myView As View - myView = iDrawing.CreateDrawViewFromModelView3(Settings.folderPaths("object_" & Data.objectNum & "_models3D_frames_sw_support") & "\frame_assembly" & i + 1 & ".SLDASM", + myView = iDrawing.CreateDrawViewFromModelView3(Settings.folderPaths("object_" & Data.objectNum & "_models3D_frames_sw") & "\FRAME_ASSEMBLY" & i + 1 & ".SLDASM", "*Front", swSheetWidth / 2, swSheetHeight / 2, 0) myView.UseSheetScale() = True myView.SetDisplayTangentEdges2(2) diff --git a/Wardrobe/SolidWorks/Model_3D.vb b/Wardrobe/SolidWorks/Model_3D.vb index 92e924f..58e1f32 100644 --- a/Wardrobe/SolidWorks/Model_3D.vb +++ b/Wardrobe/SolidWorks/Model_3D.vb @@ -58,11 +58,42 @@ Public Class Model_3D Dim swApp As SldWorks.SldWorks swApp = CType(System.Runtime.InteropServices.Marshal.GetActiveObject("SldWorks.Application"), SldWorks.SldWorks) - Dim status As Boolean + Dim status As Integer - Dim Assembly As ModelDoc2 = swApp.ActiveDoc() - status = Assembly.SaveAs3(Settings.folderPaths("object_" & Data.objectNum & "_models3D_gratings_sw") & "\grating_assembly.SLDASM", 0, 4) - Dim a = 1 + Dim sourcePath, destPath As String + Dim childrenSourcePaths As New List(Of String) + Dim childrenDestPaths As New List(Of String) + + sourcePath = Settings.filesFolder & "\Files\CADStart\" & designName & ".SLDASM" + destPath = Settings.folderPaths("object_" & Data.objectNum & "_models3D_gratings_sw") & "\GRATING_ASSEMBLY.SLDASM" + + childrenSourcePaths.Add(Settings.HLCtFolder & "\HLCt\Parts\START.SLDPRT") + childrenDestPaths.Add(Settings.folderPaths("object_" & Data.objectNum & "_models3D_gratings_sw_support") & "\MASTER.SLDPRT") + + Dim instanceCounter As New Dictionary(Of String, Integer) + For i = 0 To partDT.Rows.Count - 1 + childrenSourcePaths.Add(Settings.filesFolder & "\Files\CADStart\" & partDT.Rows(i)("partName") & ".SLDPRT") + + Dim partName As String = partDT.Rows(i)("partName") + Dim partNameArray As String() = partName.Split("_") + + Dim newName As String = "" + For j = 0 To partNameArray.Length - 4 + newName += partNameArray(j) & "_" + Next + + Try + instanceCounter(newName.Substring(0, newName.Length - 1)) += 1 + Catch ex As Exception + instanceCounter.Add(newName.Substring(0, newName.Length - 1), 1) + End Try + + childrenDestPaths.Add(Settings.folderPaths("object_" & Data.objectNum & "_models3D_gratings_sw") & "\" & newName & + instanceCounter(newName.Substring(0, newName.Length - 1)) & ".SLDPRT") + Next + + swApp.CloseAllDocuments(True) + status = swApp.CopyDocument(sourcePath, destPath, childrenSourcePaths.ToArray(), childrenDestPaths.ToArray(), 2) End Sub Private Shared Sub Inst_Recesses(parentID As Integer, gratingParameters As DataRow, recessDR As DataRow)