diff --git a/HLCt/Parts/~$START.SLDPRT b/HLCt/Parts/~$START.SLDPRT new file mode 100644 index 0000000..b07f2ee Binary files /dev/null and b/HLCt/Parts/~$START.SLDPRT differ diff --git a/HLCt/recess_middle_square.SLDPRT b/HLCt/recess_middle_square.SLDPRT index 12902e7..0f8c4fa 100644 Binary files a/HLCt/recess_middle_square.SLDPRT and b/HLCt/recess_middle_square.SLDPRT differ diff --git a/HLCt/recess_side_square.SLDPRT b/HLCt/recess_side_square.SLDPRT index b07eb7a..0bf6953 100644 Binary files a/HLCt/recess_side_square.SLDPRT and b/HLCt/recess_side_square.SLDPRT differ diff --git a/Wardrobe/GUI/Draw_Grating.vb b/Wardrobe/GUI/Draw_Grating.vb index e422829..cb5f872 100644 --- a/Wardrobe/GUI/Draw_Grating.vb +++ b/Wardrobe/GUI/Draw_Grating.vb @@ -42,15 +42,21 @@ ' --- Create points for grating direction symbol --- Private Shared Sub Create_DirSymbolPoints() - DirSymbolPoints.Add({-27 + Data.guiPanelMidX, -2 + Data.guiPanelMidY}) - DirSymbolPoints.Add({17 + Data.guiPanelMidX, -2 + Data.guiPanelMidY}) - DirSymbolPoints.Add({9 + Data.guiPanelMidX, -10 + Data.guiPanelMidY}) - DirSymbolPoints.Add({12 + Data.guiPanelMidX, -13 + Data.guiPanelMidY}) - DirSymbolPoints.Add({27 + Data.guiPanelMidX, 2 + Data.guiPanelMidY}) - DirSymbolPoints.Add({-17 + Data.guiPanelMidX, 2 + Data.guiPanelMidY}) - DirSymbolPoints.Add({-9 + Data.guiPanelMidX, 10 + Data.guiPanelMidY}) - DirSymbolPoints.Add({-12 + Data.guiPanelMidX, 13 + Data.guiPanelMidY}) - DirSymbolPoints.Add({-27 + Data.guiPanelMidX, -2 + Data.guiPanelMidY}) + 'DirSymbolPoints.Add({-27 + Data.guiPanelMidX, -2 + Data.guiPanelMidY}) + 'DirSymbolPoints.Add({17 + Data.guiPanelMidX, -2 + Data.guiPanelMidY}) + 'DirSymbolPoints.Add({9 + Data.guiPanelMidX, -10 + Data.guiPanelMidY}) + 'DirSymbolPoints.Add({12 + Data.guiPanelMidX, -13 + Data.guiPanelMidY}) + 'DirSymbolPoints.Add({27 + Data.guiPanelMidX, 2 + Data.guiPanelMidY}) + 'DirSymbolPoints.Add({-17 + Data.guiPanelMidX, 2 + Data.guiPanelMidY}) + 'DirSymbolPoints.Add({-9 + Data.guiPanelMidX, 10 + Data.guiPanelMidY}) + 'DirSymbolPoints.Add({-12 + Data.guiPanelMidX, 13 + Data.guiPanelMidY}) + 'DirSymbolPoints.Add({-27 + Data.guiPanelMidX, -2 + Data.guiPanelMidY}) + + DirSymbolPoints.Add({-17 + Data.guiPanelMidX, -10 + Data.guiPanelMidY}) + DirSymbolPoints.Add({-27 + Data.guiPanelMidX, Data.guiPanelMidY}) + DirSymbolPoints.Add({27 + Data.guiPanelMidX, Data.guiPanelMidY}) + DirSymbolPoints.Add({17 + Data.guiPanelMidX, 10 + Data.guiPanelMidY}) + End Sub ' --- Create points for arrow symbol --- @@ -171,7 +177,7 @@ Data.grossAreaPoints(0)("GUI X"), Data.grossAreaPoints(0)("GUI Y")) ' Draw grating direction symbol - Dim symPen As Pen = New Pen(Color.Black, 1) + Dim symPen As Pen = New Pen(Color.Black, 2) For i = 0 To DirSymbolPoints.Count - 2 g.DrawLine(symPen, DirSymbolPoints(i)(0), DirSymbolPoints(i)(1), DirSymbolPoints(i + 1)(0), DirSymbolPoints(i + 1)(1)) diff --git a/Wardrobe/SolidWorks/Individual_Drawing.vb b/Wardrobe/SolidWorks/Individual_Drawing.vb index a55bcd9..d80547c 100644 --- a/Wardrobe/SolidWorks/Individual_Drawing.vb +++ b/Wardrobe/SolidWorks/Individual_Drawing.vb @@ -331,7 +331,7 @@ Public Class Individual_Drawing swSkMgr.AddToDB = True - For i = 0 To Draw_Grating.DirSymbolPoints.Count - 2 + For i = 0 To Draw_Grating.DirSymbolPoints.Count - 1 Dim x1, x2, y1, y2 As Double x1 = CDbl(CInt(Draw_Grating.DirSymbolPoints(i)(0) - Data.guiPanelMidX) / (30 * viewScale2)) y1 = -CDbl(CInt(Draw_Grating.DirSymbolPoints(i)(1) - Data.guiPanelMidY) / (30 * viewScale2)) diff --git a/Wardrobe/SolidWorks/Multiple_3D_Simplified.vb b/Wardrobe/SolidWorks/Multiple_3D_Simplified.vb index 78373a9..5131792 100644 --- a/Wardrobe/SolidWorks/Multiple_3D_Simplified.vb +++ b/Wardrobe/SolidWorks/Multiple_3D_Simplified.vb @@ -103,8 +103,34 @@ Public Class Multiple_3D_Simplified Private Shared Sub Save_Assembly() Dim swApp As SldWorks.SldWorks swApp = CType(System.Runtime.InteropServices.Marshal.GetActiveObject("SldWorks.Application"), SldWorks.SldWorks) + Dim assembly = swApp.ActiveDoc Dim status As Boolean + Dim config As Configuration + config = assembly.GetActiveConfiguration + Dim swCustPropMgr = config.CustomPropertyManager + status = swCustPropMgr.Add3("Benämning", 30, "Floor grating " & User_Input.gratingMesh & " " & User_Input.gratingHeight & "/" & User_Input.loadBarThickness, 1) + status = swCustPropMgr.Add3("ExtraBenämning1", 30, "LxW " & Data.gratingL & "x" & Data.gratingW, 1) + If User_Input.gratingSerrated Then + status = swCustPropMgr.Add3("ExtraBenämning2", 30, "Serrated", 1) + Else + status = swCustPropMgr.Add3("ExtraBenämning2", 30, "", 1) + End If + If User_Input.gratingLacquered Then + status = swCustPropMgr.Add3("Materialsort", 30, User_Input.gratingMaterial & " (Lacquered)", 1) + Else + status = swCustPropMgr.Add3("Materialsort", 30, User_Input.gratingMaterial, 1) + End If + status = swCustPropMgr.Add3("Art. Nr", 30, "TBD", 1) + status = swCustPropMgr.Add3("Material_Art", 30, "TBD", 1) + + status = swCustPropMgr.Add3("Author", 30, "", 1) + status = swCustPropMgr.Add3("Ändrad av", 30, "", 1) + status = swCustPropMgr.Add3("SkapadDatum", 30, "", 1) + status = swCustPropMgr.Add3("RevideradDatum", 30, "", 1) + + status = swCustPropMgr.Add3("epdmid", 30, "", 1) + status = swCustPropMgr.Add3("Revision", 30, "", 1) Dim Assebmly = swApp.ActiveDoc() status = Assebmly.SaveAs3(Settings.folderPaths("object_" & Data.objectNum & "_models3D_gratings_sw_support") & "\gratings_assembly_simplified.SLDASM", 0, 4) diff --git a/Wardrobe/SolidWorks/Multiple_Drawing.vb b/Wardrobe/SolidWorks/Multiple_Drawing.vb index 0ac89af..201c103 100644 --- a/Wardrobe/SolidWorks/Multiple_Drawing.vb +++ b/Wardrobe/SolidWorks/Multiple_Drawing.vb @@ -64,26 +64,211 @@ Public Class Multiple_Drawing Create_Measurement("B", True, mesOffsets(3), CompName, myView, recessName, swExtensions, iDrawing) mesOffsets(3) -= 0.01 - 'FORSÄTT HÄR!!! - ElseIf DR("CORNER") = 2 Then 'A = Veritcal höger, B = horizontal uppåt + iDrawing.ClearSelection2(True) + Create_Measurement("A", True, mesOffsets(1), CompName, myView, recessName, swExtensions, iDrawing) + mesOffsets(1) += 0.01 + Create_Measurement("B", False, mesOffsets(0), CompName, myView, recessName, swExtensions, iDrawing) + mesOffsets(0) += 0.01 + ElseIf DR("CORNER") = 3 Then 'A = horizontal nedåt, B = Veritcal höger + iDrawing.ClearSelection2(True) + Create_Measurement("A", False, mesOffsets(2), CompName, myView, recessName, swExtensions, iDrawing) + mesOffsets(2) -= 0.01 + Create_Measurement("B", True, mesOffsets(1), CompName, myView, recessName, swExtensions, iDrawing) + mesOffsets(1) += 0.01 Else 'A = Veritcal vänster, B = horizontal nedåt + iDrawing.ClearSelection2(True) + Create_Measurement("A", True, mesOffsets(3), CompName, myView, recessName, swExtensions, iDrawing) + mesOffsets(3) -= 0.01 + Create_Measurement("B", False, mesOffsets(2), CompName, myView, recessName, swExtensions, iDrawing) + mesOffsets(2) -= 0.01 + End If + + ElseIf DR("RECESS TYPE") = "SQUARE" Then + If DR("CORNER") = 1 Then + iDrawing.ClearSelection2(True) + Create_Measurement("A", True, mesOffsets(3), CompName, myView, recessName, swExtensions, iDrawing) + mesOffsets(3) -= 0.01 + Create_Measurement("B", False, mesOffsets(0), CompName, myView, recessName, swExtensions, iDrawing) + mesOffsets(0) += 0.01 + + ElseIf DR("CORNER") = 2 Then + iDrawing.ClearSelection2(True) + Create_Measurement("A", True, mesOffsets(1), CompName, myView, recessName, swExtensions, iDrawing) + mesOffsets(1) += 0.01 + Create_Measurement("B", False, mesOffsets(0), CompName, myView, recessName, swExtensions, iDrawing) + mesOffsets(0) += 0.01 + + ElseIf DR("CORNER") = 3 Then + iDrawing.ClearSelection2(True) + Create_Measurement("A", True, mesOffsets(1), CompName, myView, recessName, swExtensions, iDrawing) + mesOffsets(1) += 0.01 + Create_Measurement("B", False, mesOffsets(2), CompName, myView, recessName, swExtensions, iDrawing) + mesOffsets(2) -= 0.01 + Else + iDrawing.ClearSelection2(True) + Create_Measurement("A", True, mesOffsets(3), CompName, myView, recessName, swExtensions, iDrawing) + mesOffsets(3) -= 0.01 + Create_Measurement("B", False, mesOffsets(2), CompName, myView, recessName, swExtensions, iDrawing) + mesOffsets(2) -= 0.01 + End If + + ElseIf DR("RECESS TYPE") = "SIDE SQUARE" Then + If DR("SIDE") = 1 Then + iDrawing.ClearSelection2(True) + Create_Measurement("A", False, mesOffsets(0), CompName, myView, recessName, swExtensions, iDrawing) ' + Create_Measurement("B", True, mesOffsets(1), CompName, myView, recessName, swExtensions, iDrawing) + mesOffsets(1) += 0.01 + + status = False + counter = 0 + While status = False + gratingName = modelsDT.Rows(Grating_Fill.numOfHorizontal - 1 + counter * Grating_Fill.numOfHorizontal)("partName") + iDrawing.ClearSelection2(True) + + plane2Name = "L2@" & CompName & "@" & myView.GetName2 & "/" & gratingName & "-1@" & CompName.Split("-")(0) + status = swExtensions.SelectByID2(plane2Name, "PLANE", 0, 0, 0, False, 0, Nothing, 0) + counter += 1 + End While + + plane1Name = "A2@" & CompName & "@" & myView.GetName2 & "/" & recessName & "-1@" & CompName.Split("-")(0) + status = swExtensions.SelectByID2(plane1Name, "PLANE", 0, 0, 0, True, 0, Nothing, 0) + + measurement = iDrawing.AddHorizontalDimension2(0, mesOffsets(0), 0) + mesOffsets(0) += 0.01 + + Set_MeasurementProperties(measurement) + + ElseIf DR("SIDE") = 2 Then + iDrawing.ClearSelection2(True) + Create_Measurement("A", True, mesOffsets(1), CompName, myView, recessName, swExtensions, iDrawing) + Create_Measurement("B", False, mesOffsets(2), CompName, myView, recessName, swExtensions, iDrawing) + mesOffsets(2) -= 0.01 + + + status = False + counter = 0 + While status = False + gratingName = modelsDT.Rows(Grating_Fill.numOfHorizontal * Grating_Fill.numOfVertical - 1 - counter)("partName") + iDrawing.ClearSelection2(True) + + plane2Name = "W2@" & CompName & "@" & myView.GetName2 & "/" & gratingName & "-1@" & CompName.Split("-")(0) + status = swExtensions.SelectByID2(plane2Name, "PLANE", 0, 0, 0, False, 0, Nothing, 0) + counter += 1 + End While + + plane1Name = "A2@" & CompName & "@" & myView.GetName2 & "/" & recessName & "-1@" & CompName.Split("-")(0) + status = swExtensions.SelectByID2(plane1Name, "PLANE", 0, 0, 0, True, 0, Nothing, 0) + + measurement = iDrawing.AddVerticalDimension2(mesOffsets(1), 0, 0) + mesOffsets(1) += 0.01 + + Set_MeasurementProperties(measurement) + + ElseIf DR("SIDE") = 3 Then + iDrawing.ClearSelection2(True) + Create_Measurement("A", False, mesOffsets(2), CompName, myView, recessName, swExtensions, iDrawing) + Create_Measurement("B", True, mesOffsets(1), CompName, myView, recessName, swExtensions, iDrawing) + mesOffsets(1) += 0.01 + + status = False + counter = 0 + While status = False + gratingName = modelsDT.Rows(Grating_Fill.numOfHorizontal * Grating_Fill.numOfVertical - 1 - counter * Grating_Fill.numOfHorizontal)("partName") + iDrawing.ClearSelection2(True) + + plane2Name = "L2@" & CompName & "@" & myView.GetName2 & "/" & gratingName & "-1@" & CompName.Split("-")(0) + status = swExtensions.SelectByID2(plane2Name, "PLANE", 0, 0, 0, False, 0, Nothing, 0) + counter += 1 + End While + + plane1Name = "A1@" & CompName & "@" & myView.GetName2 & "/" & recessName & "-1@" & CompName.Split("-")(0) + status = swExtensions.SelectByID2(plane1Name, "PLANE", 0, 0, 0, True, 0, Nothing, 0) + + measurement = iDrawing.AddHorizontalDimension2(0, mesOffsets(2), 0) + mesOffsets(2) -= 0.01 + + Set_MeasurementProperties(measurement) + Else + iDrawing.ClearSelection2(True) + Create_Measurement("A", True, mesOffsets(3), CompName, myView, recessName, swExtensions, iDrawing) + Create_Measurement("B", False, mesOffsets(2), CompName, myView, recessName, swExtensions, iDrawing) + mesOffsets(2) -= 0.01 + + + status = False + counter = 0 + While status = False + gratingName = modelsDT.Rows(Grating_Fill.numOfHorizontal * (Grating_Fill.numOfVertical - 1) + counter)("partName") + iDrawing.ClearSelection2(True) + + plane2Name = "W2@" & CompName & "@" & myView.GetName2 & "/" & gratingName & "-1@" & CompName.Split("-")(0) + status = swExtensions.SelectByID2(plane2Name, "PLANE", 0, 0, 0, False, 0, Nothing, 0) + counter += 1 + End While + + plane1Name = "A1@" & CompName & "@" & myView.GetName2 & "/" & recessName & "-1@" & CompName.Split("-")(0) + status = swExtensions.SelectByID2(plane1Name, "PLANE", 0, 0, 0, True, 0, Nothing, 0) + + measurement = iDrawing.AddVerticalDimension2(mesOffsets(3), 0, 0) + mesOffsets(3) -= 0.01 + + Set_MeasurementProperties(measurement) End If - - - - ElseIf DR("RECESS TYPE") = "SQUARE" Then - - ElseIf DR("RECESS TYPE") = "SIDE SQUARE" Then - ElseIf DR("RECESS TYPE") = "MIDDLE SQUARE" Then + iDrawing.ClearSelection2(True) + Create_Measurement("A", True, mesOffsets(1), CompName, myView, recessName, swExtensions, iDrawing) + Create_Measurement("B", False, mesOffsets(2), CompName, myView, recessName, swExtensions, iDrawing) + + + + + status = False + counter = 0 + While status = False + gratingName = modelsDT.Rows(Grating_Fill.numOfHorizontal * Grating_Fill.numOfVertical - 1 - counter)("partName") + iDrawing.ClearSelection2(True) + + plane2Name = "W2@" & CompName & "@" & myView.GetName2 & "/" & gratingName & "-1@" & CompName.Split("-")(0) + status = swExtensions.SelectByID2(plane2Name, "PLANE", 0, 0, 0, False, 0, Nothing, 0) + counter += 1 + End While + + plane1Name = "A1@" & CompName & "@" & myView.GetName2 & "/" & recessName & "-1@" & CompName.Split("-")(0) + status = swExtensions.SelectByID2(plane1Name, "PLANE", 0, 0, 0, True, 0, Nothing, 0) + + measurement = iDrawing.AddVerticalDimension2(mesOffsets(1), 0, 0) + mesOffsets(1) += 0.01 + + Set_MeasurementProperties(measurement) + + status = False + counter = 0 + While status = False + gratingName = modelsDT.Rows(Grating_Fill.numOfHorizontal * Grating_Fill.numOfVertical - 1 - counter * Grating_Fill.numOfHorizontal)("partName") + iDrawing.ClearSelection2(True) + + plane2Name = "L2@" & CompName & "@" & myView.GetName2 & "/" & gratingName & "-1@" & CompName.Split("-")(0) + status = swExtensions.SelectByID2(plane2Name, "PLANE", 0, 0, 0, False, 0, Nothing, 0) + counter += 1 + End While + + plane1Name = "B2@" & CompName & "@" & myView.GetName2 & "/" & recessName & "-1@" & CompName.Split("-")(0) + status = swExtensions.SelectByID2(plane1Name, "PLANE", 0, 0, 0, True, 0, Nothing, 0) + + measurement = iDrawing.AddHorizontalDimension2(0, mesOffsets(2), 0) + mesOffsets(2) -= 0.01 + + Set_MeasurementProperties(measurement) + + End If Next @@ -143,6 +328,7 @@ Public Class Multiple_Drawing iDrawing.ClearSelection2(True) Set_MeasurementProperties(measurement) + measurement.ShowParenthesis = True ' -- Loop Vertical -- For i = 0 To Grating_Fill.numOfVertical - 1 @@ -188,10 +374,32 @@ Public Class Multiple_Drawing iDrawing.ClearSelection2(True) Set_MeasurementProperties(measurement) + measurement.ShowParenthesis = True - Dim a = 1 + status = layMgr.AddLayer("Symbol", "", 0, 0, 2) + status = layMgr.SetCurrentLayer("Symbol") + Dim swSkMgr As SketchManager + swSkMgr = iDrawing.SketchManager + status = iDrawing.ActivateSheet("Sheet1") + Dim skSegment As Object + + swSkMgr.AddToDB = True + Dim sheetProp = swSheet.GetProperties() + Dim sheetScale = sheetProp(3) + For i = 0 To Draw_Grating.DirSymbolPoints.Count - 2 + Dim x1, x2, y1, y2 As Double + x1 = CDbl((Draw_Grating.DirSymbolPoints(i)(0) - Data.guiPanelMidX) / 200) + (swSheetWidth - 0.05) * sheetScale + y1 = -CDbl((Draw_Grating.DirSymbolPoints(i)(1) - Data.guiPanelMidY) / 200) + (swSheetHeight / 2) * sheetScale + x2 = CDbl((Draw_Grating.DirSymbolPoints(i + 1)(0) - Data.guiPanelMidX) / 200) + (swSheetWidth - 0.05) * sheetScale + y2 = -CDbl((Draw_Grating.DirSymbolPoints(i + 1)(1) - Data.guiPanelMidY) / 200) + (swSheetHeight / 2) * sheetScale + + skSegment = swSkMgr.CreateLine(x1, y1, 0, x2, y2, 0) + Next + swSkMgr.AddToDB = False + + Dim note = iDrawing.CreateText2("Load Bearing Direction", (swSheetWidth - 0.075), (swSheetHeight / 2 + 0.012), 0, 0.003, 0) End Sub @@ -205,9 +413,9 @@ Public Class Multiple_Drawing Dim measurement As IDisplayDimension If verticalDim = True Then - measurement = iDrawing.AddVerticalDimension2(0, mesOffset, 0) + measurement = iDrawing.AddVerticalDimension2(mesOffset, 0, 0) Else - measurement = iDrawing.AddHorizontalDimension2(mesOffset, 0, 0) + measurement = iDrawing.AddHorizontalDimension2(0, mesOffset, 0) End If Set_MeasurementProperties(measurement)