Dim App As Object
Set App = CreateObject("PCDLRN.Application")
Dim Part As Object
Set Part = App.ActivePartProgram
Dim Cmds As Object
Set Cmds = Part.Commands
Dim Cmd As Object
Dim PLN_ID$
Dim X#(99), Y#(99), Z#(99)
Dim i%, j%
Dim HDirection%, Hpattern%, NHits%, NHitsRing%, NRings%, hit%, buttonval%
Dim HitAngle#, HitAngleInc#, SRadius#, ERadius#, RadiusInc#
Dim X_theo#, Y_theo#, Z_theo#, Xtheo#, Ytheo#
If NRings > 1 Then
RadiusInc = (ERadius - SRadius) / (NRings - 1)
Else
RadiusInc = 0
End If
If dlg1.EditBox_9 <> 0 Then
If dlg1.EditBox_9 < 0 Then
dlg1.EditBox_9 = 360 + dlg1.EditBox_9
End If
HitAngle = dlg1.EditBox_9*(PI/180)
End If
If dlg1.OptionGroup2 = 1 Then
HDirection = 1
End If
If dlg1.OptionGroup1 = 1 Then
Hpattern = 1
End If
hit = 1
If Hpattern = 1 Then ' Orbital
For i = 1 To NRings
For j = 1 To NHitsRing
If HDirection = 0 Then
Xtheo = SRadius * cos(HitAngle) + X_theo
Ytheo = SRadius * sin(HitAngle) + Y_theo
Else
Xtheo = X_theo + SRadius * cos(HitAngle)
Ytheo = (Y_theo + SRadius * sin(HitAngle) ) * -1
End If
X(hit) = Xtheo
Y(hit) = Ytheo
hit = hit + 1
HitAngle = HitAngle + HitAngleInc
Next j
HitAngle = HitAngle - HitAngleInc
SRadius = SRadius + RadiusInc
Next i
Else ' If it is Not orbital it must be Radial
For i = 1 To NHitsRing
For j = 1 To NRings
If HDirection = 0 Then
Xtheo = SRadius * cos(HitAngle) + X_theo
Ytheo = SRadius * sin(HitAngle) + Y_theo
Else
Xtheo = X_theo + SRadius * cos(HitAngle)
Ytheo = (Y_theo + SRadius * sin(HitAngle)) * -1
End If
X(hit) = Xtheo
Y(hit) = Ytheo
hit = hit + 1
SRadius = SRadius + RadiusInc
Dim App As Object
Set App = CreateObject("PCDLRN.Application")
Dim Part As Object
Set Part = App.ActivePartProgram
Dim Cmds As Object
Set Cmds = Part.Commands
Dim Cmd As Object
Dim PLN_ID$
Dim X#(99), Y#(99), Z#(99)
Dim i%, j%
Dim HDirection%, Hpattern%, NHits%, NHitsRing%, NRings%, hit%, buttonval%
Dim HitAngle#, HitAngleInc#, SRadius#, ERadius#, RadiusInc#
Dim X_theo#, Y_theo#, Z_theo#, Xtheo#, Ytheo#
If NRings > 1 Then
RadiusInc = (ERadius - SRadius) / (NRings - 1)
Else
RadiusInc = 0
End If
If dlg1.EditBox_9 <> 0 Then
If dlg1.EditBox_9 < 0 Then
dlg1.EditBox_9 = 360 + dlg1.EditBox_9
End If
HitAngle = dlg1.EditBox_9*(PI/180)
End If
If dlg1.OptionGroup2 = 1 Then
HDirection = 1
End If
If dlg1.OptionGroup1 = 1 Then
Hpattern = 1
End If
hit = 1
If Hpattern = 1 Then ' Orbital
For i = 1 To NRings
For j = 1 To NHitsRing
If HDirection = 0 Then
Xtheo = SRadius * cos(HitAngle) + X_theo
Ytheo = SRadius * sin(HitAngle) + Y_theo
Else
Xtheo = X_theo + SRadius * cos(HitAngle)
Ytheo = (Y_theo + SRadius * sin(HitAngle) ) * -1
End If
X(hit) = Xtheo
Y(hit) = Ytheo
hit = hit + 1
HitAngle = HitAngle + HitAngleInc
Next j
HitAngle = HitAngle - HitAngleInc
SRadius = SRadius + RadiusInc
Next i
Else ' If it is Not orbital it must be Radial
For i = 1 To NHitsRing
For j = 1 To NRings
If HDirection = 0 Then
Xtheo = SRadius * cos(HitAngle) + X_theo
Ytheo = SRadius * sin(HitAngle) + Y_theo
Else
Xtheo = X_theo + SRadius * cos(HitAngle)
Ytheo = (Y_theo + SRadius * sin(HitAngle)) * -1
End If
X(hit) = Xtheo
Y(hit) = Ytheo
hit = hit + 1
SRadius = SRadius + RadiusInc