|
Helix Example |
Using Programming Languages other than VBA
Sub Example_Helix_BaseRadius()
Dim ssetObj As AcadSelectionSet
Set ssetObj = ThisDrawing.SelectionSets.Add("TEST_HELIX")
Dim mode As Integer
ssetObj.SelectOnScreen
Dim obj As AcadEntity
Dim helix As AcadHelix
Dim helixBaseRadius As Double
Dim objName As String
For Each obj In ssetObj
objName = obj.ObjectName
If TypeOf obj Is AcadHelix Then
Set helix = obj
helix.BaseRadius = helix.BaseRadius * 2
MsgBox "Baseradius of helix is doubled to " & helix.BaseRadius * 2
End If
Next
ssetObj.Delete
End Sub
Sub Example_Helix_TopRadius()
Dim ssetObj As AcadSelectionSet
Set ssetObj = ThisDrawing.SelectionSets.Add("TEST_HELIX")
Dim mode As Integer
ssetObj.SelectOnScreen
Dim obj As AcadEntity
Dim helix As AcadHelix
Dim helixBaseRadius As Double
Dim objName As String
For Each obj In ssetObj
objName = obj.ObjectName
If TypeOf obj Is AcadHelix Then
Set helix = obj
helix.TopRadius = helix.TopRadius * 0.5
MsgBox "Top radius of helix is halved to " & helix.TopRadius * 0.5
End If
Next
ssetObj.Delete
End Sub
Sub Example_Helix_Direction()
Dim ssetObj As AcadSelectionSet
Set ssetObj = ThisDrawing.SelectionSets.Add("TEST_HELIX")
Dim mode As Integer
ssetObj.SelectOnScreen
Dim obj As AcadEntity
Dim helix As AcadHelix
Dim helixBaseRadius As Double
Dim objName As String
For Each obj In ssetObj
objName = obj.ObjectName
If TypeOf obj Is AcadHelix Then
Set helix = obj
If helix.Twist = acCCW Then
helix.Twist = acCW
Else
helix.Twist = acCCW
End If
MsgBox "Direction is reversed"
End If
Next
ssetObj.Delete
End Sub
Sub Example_Helix_Height()
Dim ssetObj As AcadSelectionSet
Set ssetObj = ThisDrawing.SelectionSets.Add("TEST_HELIX")
Dim mode As Integer
ssetObj.SelectOnScreen
Dim obj As AcadEntity
Dim helix As AcadHelix
Dim helixBaseRadius As Double
Dim objName As String
For Each obj In ssetObj
objName = obj.ObjectName
If TypeOf obj Is AcadHelix Then
Set helix = obj
helix.Constrain = acHeight
helix.Height = helix.Height * 2
MsgBox "Height doubled"
End If
Next
ssetObj.Delete
End Sub
Sub Example_Helix_Turns()
Dim ssetObj As AcadSelectionSet
Set ssetObj = ThisDrawing.SelectionSets.Add("TEST_HELIX")
Dim mode As Integer
ssetObj.SelectOnScreen
Dim obj As AcadEntity
Dim helix As AcadHelix
Dim helixBaseRadius As Double
Dim objName As String
For Each obj In ssetObj
objName = obj.ObjectName
If TypeOf obj Is AcadHelix Then
Set helix = obj
helix.Constrain = acTurns
helix.Turns = helix.Turns * 2
MsgBox "Turns doubled"
End If
Next
ssetObj.Delete
End Sub
Sub Example_Helix_TurnHeight()
Dim ssetObj As AcadSelectionSet
Set ssetObj = ThisDrawing.SelectionSets.Add("TEST_HELIX")
Dim mode As Integer
ssetObj.SelectOnScreen
Dim obj As AcadEntity
Dim helix As AcadHelix
Dim helixBaseRadius As Double
Dim objName As String
For Each obj In ssetObj
objName = obj.ObjectName
If TypeOf obj Is AcadHelix Then
Set helix = obj
helix.Constrain = acTurnHeight
helix.TurnHeight = helix.TurnHeight * 2
MsgBox "Turns height doubled"
End If
Next
ssetObj.Delete
End Sub
| Comments? |