Continue work on drawing for multiple

This commit is contained in:
Anton 2021-04-20 15:41:21 +02:00
parent 9840dc3375
commit 84fc7c5452
2 changed files with 94 additions and 32 deletions

View File

@ -361,7 +361,6 @@ Public Class Individual_Drawing
point2NameSW = "Point" & points(1) & "@Sketch1@" & CompName & "@" & myView.GetName2 point2NameSW = "Point" & points(1) & "@Sketch1@" & CompName & "@" & myView.GetName2
End If End If
iDrawing.ClearSelection2(True) iDrawing.ClearSelection2(True)
swExtensions.SelectByID2(point1NameSW, "EXTSKETCHSEGMENT", 0, 0, 0, True, 0, Nothing, 0) swExtensions.SelectByID2(point1NameSW, "EXTSKETCHSEGMENT", 0, 0, 0, True, 0, Nothing, 0)
@ -379,8 +378,8 @@ Public Class Individual_Drawing
Else Else
point1 = Data.gratingPoints.Rows(points(0) - 1)("X") point1 = Data.gratingPoints.Rows(points(0) - 1)("X")
point2 = Data.gratingPoints.Rows(points(1) - 1)("X") point2 = Data.gratingPoints.Rows(points(1) - 1)("X")
End If End If
Dim xPos As Double Dim xPos As Double
If Math.Abs(point1) > Math.Abs(point2) Then If Math.Abs(point1) > Math.Abs(point2) Then
xPos = point2 + (point1 - point2) / 2 xPos = point2 + (point1 - point2) / 2
@ -404,7 +403,6 @@ Public Class Individual_Drawing
Else Else
point1 = Data.gratingPoints.Rows(points(0) - 1)("Y") point1 = Data.gratingPoints.Rows(points(0) - 1)("Y")
point2 = Data.gratingPoints.Rows(points(1) - 1)("Y") point2 = Data.gratingPoints.Rows(points(1) - 1)("Y")
End If End If
Dim yPos As Double Dim yPos As Double
@ -423,7 +421,6 @@ Public Class Individual_Drawing
sideCounter(points(2) - 1) = sideCounter(points(2) - 1) + 1 sideCounter(points(2) - 1) = sideCounter(points(2) - 1) + 1
iDrawing.ClearSelection2(True) iDrawing.ClearSelection2(True)
'measurement.SetWitnessLineGap(1, True, 0.001) ' For break dimension line
measurement.SetUnits2(False, 0, 1, 0, True, 12) measurement.SetUnits2(False, 0, 1, 0, True, 12)
measurement.CenterText = True measurement.CenterText = True
measurement.SetPrecision3(0, 0, 0, 0) measurement.SetPrecision3(0, 0, 0, 0)

View File

@ -42,6 +42,63 @@ Public Class Multiple_Drawing
Dim gratingName, plane1Name, plane2Name As String Dim gratingName, plane1Name, plane2Name As String
Dim counter As Integer Dim counter As Integer
Dim measurement As IDisplayDimension Dim measurement As IDisplayDimension
Dim mesOffsets(3) As Double
mesOffsets(0) = OutLine(3) + 0.005
mesOffsets(1) = OutLine(2) + 0.005
mesOffsets(2) = OutLine(1) - 0.005
mesOffsets(3) = OutLine(0) - 0.005
' -- Recess measurements --
Dim recessDT = modelsDT.Select("parentName = '" & modelsDT.Rows(Grating_Fill.numOfHorizontal * (Grating_Fill.numOfVertical - 1))("partName") & "'")
For i = 0 To Data.recessData.Rows.Count - 1
Dim DR As DataRow = Data.recessData.Rows(i)
Dim recessName As String = recessDT(i)("partName")
If DR("RECESS TYPE") = "ANGLE" Then
If DR("CORNER") = 1 Then
'A = horizontal uppåt, B = Veritcal vänster
iDrawing.ClearSelection2(True)
Create_Measurement("A", False, mesOffsets(0), CompName, myView, recessName, swExtensions, iDrawing)
mesOffsets(0) += 0.01
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
ElseIf DR("CORNER") = 3 Then
'A = horizontal nedåt, B = Veritcal höger
Else
'A = Veritcal vänster, B = horizontal nedåt
End If
ElseIf DR("RECESS TYPE") = "SQUARE" Then
ElseIf DR("RECESS TYPE") = "SIDE SQUARE" Then
ElseIf DR("RECESS TYPE") = "MIDDLE SQUARE" Then
End If
Next
'recessData.Columns.Add("RECESS TYPE", GetType(String))
'recessData.Columns.Add("NAME", GetType(String))
'recessData.Columns.Add("CORNER", GetType(Integer))
'recessData.Columns.Add("SIDE", GetType(Integer))
'recessData.Columns.Add("WIDTH", GetType(Integer))
'recessData.Columns.Add("LENGTH", GetType(Integer))
'recessData.Columns.Add("OFFSET", GetType(Integer))
'recessData.Columns.Add("OFFSET X", GetType(Integer))
'recessData.Columns.Add("OFFSET Y", GetType(Integer))
'recessData.Columns.Add("GRATINGS", GetType(List(Of Integer)))
' -- Loop Horizontal -- ' -- Loop Horizontal --
For i = 0 To Grating_Fill.numOfHorizontal - 1 For i = 0 To Grating_Fill.numOfHorizontal - 1
status = False status = False
@ -56,15 +113,12 @@ Public Class Multiple_Drawing
counter += 1 counter += 1
End While End While
measurement = iDrawing.AddHorizontalDimension2(0, OutLine(3) + 0.005, 0) measurement = iDrawing.AddHorizontalDimension2(0, mesOffsets(0), 0)
iDrawing.ClearSelection2(True) iDrawing.ClearSelection2(True)
measurement.SetUnits2(False, 0, 1, 0, True, 12)
measurement.CenterText = True Set_MeasurementProperties(measurement)
measurement.SetPrecision3(0, 0, 0, 0)
measurement.OffsetText = True
measurement.OffsetText = False ' Helps center the text
Next Next
mesOffsets(0) += 0.01
status = False status = False
counter = 0 counter = 0
@ -85,14 +139,10 @@ Public Class Multiple_Drawing
counter += 1 counter += 1
End While End While
measurement = iDrawing.AddHorizontalDimension2(0, OutLine(3) + 0.005 + 0.01, 0) measurement = iDrawing.AddHorizontalDimension2(0, mesOffsets(0), 0)
iDrawing.ClearSelection2(True)
measurement.SetUnits2(False, 0, 1, 0, True, 12) Set_MeasurementProperties(measurement)
measurement.CenterText = True
measurement.SetPrecision3(0, 0, 0, 0)
measurement.ShowParenthesis = True
measurement.OffsetText = True
measurement.OffsetText = False
' -- Loop Vertical -- ' -- Loop Vertical --
For i = 0 To Grating_Fill.numOfVertical - 1 For i = 0 To Grating_Fill.numOfVertical - 1
@ -108,15 +158,12 @@ Public Class Multiple_Drawing
counter += 1 counter += 1
End While End While
measurement = iDrawing.AddVerticalDimension2(OutLine(0) - 0.005, 0, 0) measurement = iDrawing.AddVerticalDimension2(mesOffsets(3), 0, 0)
iDrawing.ClearSelection2(True) iDrawing.ClearSelection2(True)
measurement.SetUnits2(False, 0, 1, 0, True, 12)
measurement.CenterText = True Set_MeasurementProperties(measurement)
measurement.SetPrecision3(0, 0, 0, 0)
measurement.OffsetText = True
measurement.OffsetText = False ' Helps center the text
Next Next
mesOffsets(3) -= 0.01
status = False status = False
counter = 0 counter = 0
@ -137,22 +184,40 @@ Public Class Multiple_Drawing
counter += 1 counter += 1
End While End While
measurement = iDrawing.AddVerticalDimension2(OutLine(0) - 0.005 - 0.01, 0, 0) measurement = iDrawing.AddVerticalDimension2(mesOffsets(3), 0, 0)
iDrawing.ClearSelection2(True)
measurement.SetUnits2(False, 0, 1, 0, True, 12) Set_MeasurementProperties(measurement)
measurement.CenterText = True
measurement.SetPrecision3(0, 0, 0, 0)
measurement.ShowParenthesis = True
measurement.OffsetText = True
measurement.OffsetText = False
Dim a = 1 Dim a = 1
End Sub
Private Shared Sub Create_Measurement(mesName As String, verticalDim As Boolean, mesOffset As Double, CompName As String, myView As View,
recessName As String, swExtensions As SldWorks.ModelDocExtension, iDrawing As DrawingDoc)
Dim status As Boolean
Dim plane1Name As String = mesName & "1@" & CompName & "@" & myView.GetName2 & "/" & recessName & "-1@" & CompName.Split("-")(0)
status = swExtensions.SelectByID2(plane1Name, "PLANE", 0, 0, 0, False, 0, Nothing, 0)
Dim plane2Name As String = mesName & "2@" & CompName & "@" & myView.GetName2 & "/" & recessName & "-1@" & CompName.Split("-")(0)
status = swExtensions.SelectByID2(plane2Name, "PLANE", 0, 0, 0, True, 0, Nothing, 0)
Dim measurement As IDisplayDimension
If verticalDim = True Then
measurement = iDrawing.AddVerticalDimension2(0, mesOffset, 0)
Else
measurement = iDrawing.AddHorizontalDimension2(mesOffset, 0, 0)
End If
Set_MeasurementProperties(measurement)
End Sub
Private Shared Sub Set_MeasurementProperties(measurement As IDisplayDimension)
measurement.SetUnits2(False, 0, 1, 0, True, 12)
measurement.CenterText = True
measurement.SetPrecision3(0, 0, 0, 0)
measurement.OffsetText = True
measurement.OffsetText = False ' Helps center the text
End Sub End Sub
End Class End Class