HLCt fixes and multiple drawing

This commit is contained in:
Mans 2021-04-22 11:45:58 +02:00
parent 84fc7c5452
commit fef3a96bc4
7 changed files with 263 additions and 23 deletions

BIN
HLCt/Parts/~$START.SLDPRT Normal file

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@ -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))

View File

@ -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))

View File

@ -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)

View File

@ -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)