Message 1 of 6
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report
I have a rule in an assembly component, Dome Panel Layout:1 that does run when the below code is run. I have tried it with the commented-out command as well. The code "Sketch Control " in the part works just fine. One interesting item that might be related is that if the "Sketch Control " in the part is run in the part, the results do not update in the assembly.
Thanks for the help.
Running Inventor 2021
Code from the assembly.
iLogicVb.RunRule("DOME PANEL LAYOUT:1", "SKETCH CONTROL")
'iLogicVb.UpdateWhenDone = True
Code from the part. While not elegant it works.
Dim oDoc = ThisApplication.ActiveDocument
Dim oSketches As PlanarSketches = oDoc.ComponentDefinition.Sketches
For Each oSketch As PlanarSketch In oSketches
If COURSE_NUMBER = 1 Then
If oSketch.Name = "DOME INSIDE PLATE SKETCH" Then
oSketch.Visible = True
End If
End If
If COURSE_NUMBER = 1 Then
If oSketch.Name = "DOME SECONDARY PLATE SKETCH" Then
oSketch.Visible = False
End If
End If
If COURSE_NUMBER = 1 Then
If oSketch.Name = "DOME TERTIARY PLATE SKETCH" Then
oSketch.Visible = False
End If
End If
If COURSE_NUMBER = 1 Then
If oSketch.Name = "DOME QUAD PLATE SKETCH" Then
oSketch.Visible = False
End If
End If
If COURSE_NUMBER = 2 Then
If oSketch.Name = "DOME INSIDE PLATE SKETCH" Then
oSketch.Visible = True
End If
End If
If COURSE_NUMBER = 2 Then
If oSketch.Name = "DOME SECONDARY PLATE SKETCH" Then
oSketch.Visible = True
End If
End If
If COURSE_NUMBER = 2 Then
If oSketch.Name = "DOME TERTIARY PLATE SKETCH" Then
oSketch.Visible = False
End If
End If
If COURSE_NUMBER = 2 Then
If oSketch.Name = "DOME QUAD PLATE SKETCH" Then
oSketch.Visible = False
End If
End If
If COURSE_NUMBER = 3 Then
If oSketch.Name = "DOME INSIDE PLATE SKETCH" Then
oSketch.Visible = True
End If
End If
If COURSE_NUMBER = 3 Then
If oSketch.Name = "DOME SECONDARY PLATE SKETCH" Then
oSketch.Visible = True
End If
End If
If COURSE_NUMBER = 3 Then
If oSketch.Name = "DOME TERTIARY PLATE SKETCH" Then
oSketch.Visible = True
End If
End If
If COURSE_NUMBER = 3 Then
If oSketch.Name = "DOME QUAD PLATE SKETCH" Then
oSketch.Visible = False
End If
End If
If COURSE_NUMBER = 4 Then
If oSketch.Name = "DOME INSIDE PLATE SKETCH" Then
oSketch.Visible = True
End If
End If
If COURSE_NUMBER = 4 Then
If oSketch.Name = "DOME SECONDARY PLATE SKETCH" Then
oSketch.Visible = True
End If
End If
If COURSE_NUMBER = 4 Then
If oSketch.Name = "DOME TERTIARY PLATE SKETCH" Then
oSketch.Visible = True
End If
End If
If COURSE_NUMBER = 4 Then
If oSketch.Name = "DOME QUAD PLATE SKETCH" Then
oSketch.Visible = True
End If
End If
Next
RuleParametersOutput ()
InventorVb.DocumentUpdate()
Parameter.UpdateAfterChange = True
iLogicVb.UpdateWhenDone = True
Solved! Go to Solution.