Chào các bạn,
mình tạo regions trong Vba autocad từ đường Pline nối tiếp với cung tròn arc (kín) nhưng bị lỗi.
Khi check trên bản vẽ cad, đo khoảng cách giữa điểm cuối đường pline và đầu cung tròn arc = 0 (tương tự khoảng cách điểm cuối cung tròn arc với đầu đường thẳng = 0)
Cung tròn: có tâm tại (0,0,0), bán kính R, góc xuất phát, góc kết thúc
Đường pline: điểm đầu trùng với điểm cuối cung tròn, điểm cuối trùng điểm đầu cung tròn
Nhờ các bạn chỉ giúp. Cảm ơn
---------code----------
'Tạo pline
k = 0
For i = 2 To LastRow1
For j = 1 To 2
dblCoordinates1(k) = shCoordinates.Cells(i, j + 10)
k = k + 1
Next j
Next i
On Error Resume Next
'Check if the active space is paper space and change it to model space.
If acadDoc.ActiveSpeace = 0 Then '0 = acPaperSpace in early binding
acadDoc.ActiveSpace = 1 '1 = acModelSpace in early binding
End If
Set acadPol(0) = acadDoc.ModelSpace.AddLightWeightPolyline(dblCoordinates)
acadPol(0).Closed = False
'Tạo cung tròn arc
With shCoordinates
'Set the circle radius.
For i = 1 To 2
dblRadius = .Range("E" & i + 1).Value
dblStart = .Range("F" & i + 1).Value * pi_ / 180
dblEnd = .Range("G" & i + 1).Value * pi_ / 180
'MsgBox dblEnd
'If the circle radius is greater than 0, get the circle center and draw the circle.
If dblRadius > 0 Then
'Set the circle centert.
varCenter(0) = .Range("B" & i + 1).Value
varCenter(1) = .Range("C" & i + 1).Value
varCenter(2) = .Range("D" & i + 1).Value
If i = 1 Then
Set acadPol(1) = acadDoc.ModelSpace.AddArc(varCenter, dblRadius, dblStart, dblEnd)
End If
End If
Next i
End With
'Tạo region
varRegions = acadDoc.ModelSpace.AddRegion(acadPol)
=> bị lỗi không tạo được region
mình tạo regions trong Vba autocad từ đường Pline nối tiếp với cung tròn arc (kín) nhưng bị lỗi.
Khi check trên bản vẽ cad, đo khoảng cách giữa điểm cuối đường pline và đầu cung tròn arc = 0 (tương tự khoảng cách điểm cuối cung tròn arc với đầu đường thẳng = 0)
Cung tròn: có tâm tại (0,0,0), bán kính R, góc xuất phát, góc kết thúc
Đường pline: điểm đầu trùng với điểm cuối cung tròn, điểm cuối trùng điểm đầu cung tròn
Nhờ các bạn chỉ giúp. Cảm ơn
---------code----------
'Tạo pline
k = 0
For i = 2 To LastRow1
For j = 1 To 2
dblCoordinates1(k) = shCoordinates.Cells(i, j + 10)
k = k + 1
Next j
Next i
On Error Resume Next
'Check if the active space is paper space and change it to model space.
If acadDoc.ActiveSpeace = 0 Then '0 = acPaperSpace in early binding
acadDoc.ActiveSpace = 1 '1 = acModelSpace in early binding
End If
Set acadPol(0) = acadDoc.ModelSpace.AddLightWeightPolyline(dblCoordinates)
acadPol(0).Closed = False
'Tạo cung tròn arc
With shCoordinates
'Set the circle radius.
For i = 1 To 2
dblRadius = .Range("E" & i + 1).Value
dblStart = .Range("F" & i + 1).Value * pi_ / 180
dblEnd = .Range("G" & i + 1).Value * pi_ / 180
'MsgBox dblEnd
'If the circle radius is greater than 0, get the circle center and draw the circle.
If dblRadius > 0 Then
'Set the circle centert.
varCenter(0) = .Range("B" & i + 1).Value
varCenter(1) = .Range("C" & i + 1).Value
varCenter(2) = .Range("D" & i + 1).Value
If i = 1 Then
Set acadPol(1) = acadDoc.ModelSpace.AddArc(varCenter, dblRadius, dblStart, dblEnd)
End If
End If
Next i
End With
'Tạo region
varRegions = acadDoc.ModelSpace.AddRegion(acadPol)
=> bị lỗi không tạo được region