End pieces for frames
This commit is contained in:
parent
d438a6b994
commit
61de434ebc
Binary file not shown.
Binary file not shown.
|
|
@ -250,7 +250,7 @@ Public Class Individual
|
||||||
Model_3D_Fill.BuildGrid()
|
Model_3D_Fill.BuildGrid()
|
||||||
Else
|
Else
|
||||||
Model_3D.BuildGrating()
|
Model_3D.BuildGrating()
|
||||||
Drawing.Create_Model_For_Drawing()
|
'Drawing.Create_Model_For_Drawing()
|
||||||
End If
|
End If
|
||||||
End Sub
|
End Sub
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1,17 +1,20 @@
|
||||||
Imports XCCLibrary
|
Imports XCCLibrary
|
||||||
|
Imports SldWorks
|
||||||
Public Class Individual_Frame_3D
|
Public Class Individual_Frame_3D
|
||||||
|
Private Shared cuttingList As New Dictionary(Of Integer, Integer())
|
||||||
Private Shared designName As String
|
Private Shared designName As String
|
||||||
|
Private Shared sideFrameLengths As New Dictionary(Of String, Integer)
|
||||||
Public Shared Sub Build_Frame(gratingParameters As DataRow, parentID As Integer)
|
Public Shared Sub Build_Frame(gratingParameters As DataRow, parentID As Integer)
|
||||||
Dim frameDT As New DataTable
|
Dim frameDT As New DataTable
|
||||||
frameDT = Generate_FrameData(gratingParameters)
|
frameDT = Generate_FrameData(gratingParameters)
|
||||||
|
|
||||||
Dim sideFrameLengths As New Dictionary(Of String, Integer)
|
|
||||||
For i = 0 To frameDT.Rows.Count - 1
|
For i = 0 To frameDT.Rows.Count - 1
|
||||||
If frameDT.Rows(i)("TYPE") = "SIDE" Then
|
If frameDT.Rows(i)("TYPE") = "SIDE" Then
|
||||||
sideFrameLengths.Add("Frame " & sideFrameLengths.Count + 1, frameDT.Rows(i)("LENGTH"))
|
sideFrameLengths.Add("Frame " & sideFrameLengths.Count + 1, frameDT.Rows(i)("LENGTH"))
|
||||||
End If
|
End If
|
||||||
Next
|
Next
|
||||||
Dim cuttingList As New Dictionary(Of Integer, Integer())
|
|
||||||
cuttingList = Generate_CuttingList(frameDT, sideFrameLengths)
|
cuttingList = Generate_CuttingList(frameDT, sideFrameLengths)
|
||||||
|
|
||||||
Dim inst_ As Integer
|
Dim inst_ As Integer
|
||||||
|
|
@ -25,8 +28,8 @@ Public Class Individual_Frame_3D
|
||||||
HLCtName = "frame_l_straight"
|
HLCtName = "frame_l_straight"
|
||||||
End If
|
End If
|
||||||
inst_ = ExternalClass.instantiate_parts(parentID, HLCtName, "")
|
inst_ = ExternalClass.instantiate_parts(parentID, HLCtName, "")
|
||||||
ExternalClass.modify_parameter_value("DP_HEIGHT", inst_, 30)
|
ExternalClass.modify_parameter_value("DP_HEIGHT", inst_, 30) 'FIXA
|
||||||
ExternalClass.modify_parameter_value("DP_WIDTH", inst_, 40)
|
ExternalClass.modify_parameter_value("DP_WIDTH", inst_, 40) 'FIXA
|
||||||
|
|
||||||
ExternalClass.modify_parameter_value("DP_ROTATION", inst_, frameDT.Rows(i)("ROTATION"))
|
ExternalClass.modify_parameter_value("DP_ROTATION", inst_, frameDT.Rows(i)("ROTATION"))
|
||||||
ExternalClass.modify_parameter_value("DP_OFFSET_W", inst_, frameDT.Rows(i)("OFFSET_W"))
|
ExternalClass.modify_parameter_value("DP_OFFSET_W", inst_, frameDT.Rows(i)("OFFSET_W"))
|
||||||
|
|
@ -283,4 +286,55 @@ Public Class Individual_Frame_3D
|
||||||
|
|
||||||
Return cuttingList
|
Return cuttingList
|
||||||
End Function
|
End Function
|
||||||
|
|
||||||
|
Public Shared Sub Generate_End_Frame_Piece()
|
||||||
|
Dim swApp As SldWorks.SldWorks
|
||||||
|
swApp = CType(System.Runtime.InteropServices.Marshal.GetActiveObject("SldWorks.Application"), SldWorks.SldWorks)
|
||||||
|
Dim boolstatus As Boolean
|
||||||
|
Dim longstatus As Integer, longwarnings As Integer
|
||||||
|
|
||||||
|
For j = 0 To cuttingList.Count - 1
|
||||||
|
Dim Part = swApp.OpenDoc6(Settings.HLCtFolder & "\HLCt\frame_l_straight.SLDPRT", 1, 0, "", longstatus, longwarnings)
|
||||||
|
|
||||||
|
longstatus = Part.SaveAs3(Individual.filepath & "\Temp\frame_l_end_piece" & j + 1 & ".SLDPRT", 0, 0) 'FIXA ettan
|
||||||
|
|
||||||
|
Dim swEquationMgr As EquationMgr
|
||||||
|
swEquationMgr = Part.GetEquationMgr()
|
||||||
|
|
||||||
|
Dim counter As String = 0
|
||||||
|
|
||||||
|
For i = 0 To swEquationMgr.GetCount() - 1
|
||||||
|
Dim equationName = swEquationMgr.Equation(i)
|
||||||
|
|
||||||
|
Dim tempName = equationName.Substring(1, equationName.Length - 2)
|
||||||
|
tempName = tempName.Split("""")(0)
|
||||||
|
|
||||||
|
equationName = equationName.Split("=")(0) & "= "
|
||||||
|
If tempName = "DP_HEIGHT" Then
|
||||||
|
swEquationMgr.Equation(i) = equationName & 30 'FIXA
|
||||||
|
counter += 1
|
||||||
|
ElseIf tempName = "DP_WIDTH" Then
|
||||||
|
swEquationMgr.Equation(i) = equationName & 40 'FIXA
|
||||||
|
counter += 1
|
||||||
|
ElseIf tempName = "DP_CUTOFFSET1" Then
|
||||||
|
Dim cutLength As Integer = 0
|
||||||
|
For k = 0 To cuttingList.ElementAt(j).Value.Count - 1
|
||||||
|
cutLength += sideFrameLengths("Frame " & cuttingList.ElementAt(j).Value(k))
|
||||||
|
Next
|
||||||
|
swEquationMgr.Equation(i) = equationName & cutLength
|
||||||
|
counter += 1
|
||||||
|
ElseIf tempName.Split("_")(0) = "DP" Then
|
||||||
|
swEquationMgr.Equation(i) = equationName & 0
|
||||||
|
counter += 1
|
||||||
|
End If
|
||||||
|
If counter = 7 Then
|
||||||
|
Exit For
|
||||||
|
End If
|
||||||
|
Next
|
||||||
|
boolstatus = Part.EditRebuild3()
|
||||||
|
Dim swErrors As Integer
|
||||||
|
Dim swWarnings As Integer
|
||||||
|
boolstatus = Part.Save3(1, swErrors, swWarnings)
|
||||||
|
Next
|
||||||
|
End Sub
|
||||||
End Class
|
End Class
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,11 @@
|
||||||
|
Imports SldWorks
|
||||||
|
Public Class Individual_Frame_Drawing
|
||||||
|
Public Shared Sub Create_Assemblies()
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
End Sub
|
||||||
|
|
||||||
|
|
||||||
|
End Class
|
||||||
|
|
@ -45,6 +45,7 @@ Public Class Model_3D
|
||||||
groupClass.InstantiateGroup(designName, grNr, "START")
|
groupClass.InstantiateGroup(designName, grNr, "START")
|
||||||
|
|
||||||
Recess_Indent()
|
Recess_Indent()
|
||||||
|
Individual_Frame_3D.Generate_End_Frame_Piece()
|
||||||
End Sub
|
End Sub
|
||||||
|
|
||||||
Private Shared Sub Inst_Recesses(parentID As Integer, gratingParameters As DataRow, recessDR As DataRow)
|
Private Shared Sub Inst_Recesses(parentID As Integer, gratingParameters As DataRow, recessDR As DataRow)
|
||||||
|
|
@ -221,7 +222,7 @@ Public Class Model_3D
|
||||||
|
|
||||||
Dim recessParts = partDT.Select("parentName = '" & gratingPartName & "'")
|
Dim recessParts = partDT.Select("parentName = '" & gratingPartName & "'")
|
||||||
Dim recessPartName As String
|
Dim recessPartName As String
|
||||||
For i = 0 To recessParts.Count - 1
|
For i = 0 To recessParts.Count - 100 'FIXA (Ska vara "-1")
|
||||||
Assembly.ClearSelection2(True)
|
Assembly.ClearSelection2(True)
|
||||||
|
|
||||||
' Recess part
|
' Recess part
|
||||||
|
|
@ -262,6 +263,16 @@ Public Class Model_3D
|
||||||
Assembly.ClearSelection2(True)
|
Assembly.ClearSelection2(True)
|
||||||
Next
|
Next
|
||||||
Next
|
Next
|
||||||
|
Assembly.EditAssembly
|
||||||
|
Dim swErrors As Integer
|
||||||
|
Dim swWarnings As Integer
|
||||||
|
|
||||||
|
components = Assembly.GetComponents(True)
|
||||||
|
For i = 0 To UBound(components)
|
||||||
|
Dim partDoc = components(i).GetModelDoc2()
|
||||||
|
boolstatus = partDoc.Save3(1, swErrors, swWarnings)
|
||||||
|
Next
|
||||||
|
boolstatus = Assembly.Save3(1, swErrors, swWarnings)
|
||||||
End Sub
|
End Sub
|
||||||
|
|
||||||
End Class
|
End Class
|
||||||
|
|
|
||||||
|
|
@ -121,6 +121,7 @@
|
||||||
<Compile Include="Recess Functions\Side_Rectangle.vb" />
|
<Compile Include="Recess Functions\Side_Rectangle.vb" />
|
||||||
<Compile Include="SolidWorks\Drawing.vb" />
|
<Compile Include="SolidWorks\Drawing.vb" />
|
||||||
<Compile Include="SolidWorks\Individual_Frame_3D.vb" />
|
<Compile Include="SolidWorks\Individual_Frame_3D.vb" />
|
||||||
|
<Compile Include="SolidWorks\Individual_Frame_Drawing.vb" />
|
||||||
<Compile Include="SolidWorks\Model_3D.vb" />
|
<Compile Include="SolidWorks\Model_3D.vb" />
|
||||||
<Compile Include="SolidWorks\Model_3D_Fill.vb" />
|
<Compile Include="SolidWorks\Model_3D_Fill.vb" />
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue