Community
Inventor Programming - iLogic, Macros, AddIns & Apprentice
Inventor iLogic, Macros, AddIns & Apprentice Forum. Share your knowledge, ask questions, and explore popular Inventor topics related to programming, creating add-ins, macros, working with the API or creating iLogic tools.
cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

multi-body parts visibility

4 REPLIES 4
Reply
Message 1 of 5
SpokenEarth
373 Views, 4 Replies

multi-body parts visibility

Help needed with multi-body visibility.

check the link.

 

https://www.youtube.com/watch?v=XizjzCszDNg&ab_channel=KLONG

4 REPLIES 4
Message 2 of 5
SpokenEarth
in reply to: SpokenEarth

THE CODE I USED FOR CONTROL VISIBILITY:

 

Public Sub Main()
Select Case DIN 
	
'DIN

Case "DIN 32676 SERIES 1"
setVisibility("DIN32676SERIES1",True)
setVisibility("DIN32676SERIES2STANDARD",False)
setVisibility("DIN32676SERIES2NONSTANDARD", False)
setVisibility("DIN32676SERIES3", False)
setVisibility("DIN11850", False)
setVisibility("ISO2037SERIES1", False)
setVisibility("ISO2037SERIES2", False)
setVisibility("ISO1127SERIES1", False)

Case "DIN 32676 SERIES 2 STANDARD"
setVisibility("DIN32676SERIES1",False)
setVisibility("DIN32676SERIES2STANDARD",True)
setVisibility("DIN32676SERIES2NONSTANDARD", False)
setVisibility("DIN32676SERIES3", False)
setVisibility("DIN11850", False)
setVisibility("ISO2037SERIES1", False)
setVisibility("ISO2037SERIES2", False)
setVisibility("ISO1127SERIES1", False)


Case "DIN 32676 SERIES 2 NON STANDARD"
setVisibility("DIN32676SERIES1",False)
setVisibility("DIN32676SERIES2STANDARD",False)
setVisibility("DIN32676SERIES2NONSTANDARD", True)
setVisibility("DIN32676SERIES3", False)
setVisibility("DIN11850", False)
setVisibility("ISO2037SERIES1", False)
setVisibility("ISO2037SERIES2", False)
setVisibility("ISO1127SERIES1", False)


Case "DIN 32676 SERIES 3"
setVisibility("DIN32676SERIES1",False)
setVisibility("DIN32676SERIES2STANDARD",False)
setVisibility("DIN32676SERIES2NONSTANDARD",False)
setVisibility("DIN32676SERIES3", True)
setVisibility("DIN11850", False)
setVisibility("ISO2037SERIES1", False)
setVisibility("ISO2037SERIES2", False)
setVisibility("ISO1127SERIES1", False)


Case "DIN 11850"
setVisibility("DIN32676SERIES1",False)
setVisibility("DIN32676SERIES2STANDARD",False)
setVisibility("DIN32676SERIES2NONSTANDARD",False)
setVisibility("DIN32676SERIES3",False)
setVisibility("DIN11850", True)
setVisibility("ISO2037SERIES1", False)
setVisibility("ISO2037SERIES2", False)
setVisibility("ISO1127SERIES1", False)



'ISO

Case "ISO 2037 SERIES 1"
setVisibility("ISO2037SERIES1", True)
setVisibility("ISO2037SERIES2", False)
setVisibility("ISO1127SERIES1", False)
setVisibility("DIN32676SERIES1",False)
setVisibility("DIN32676SERIES2STANDARD",False)
setVisibility("DIN32676SERIES2NONSTANDARD", False)
setVisibility("DIN32676SERIES3", False)
setVisibility("DIN11850", False)


Case "ISO 2037 SERIES 2"
setVisibility("ISO2037SERIES1", False)
setVisibility("ISO2037SERIES2", True)
setVisibility("ISO1127SERIES1", False)
setVisibility("DIN32676SERIES1",False)
setVisibility("DIN32676SERIES2STANDARD",False)
setVisibility("DIN32676SERIES2NONSTANDARD", False)
setVisibility("DIN32676SERIES3", False)
setVisibility("DIN11850", False)

Case "ISO 1127 SERIES 1"
setVisibility("ISO1127SERIES1", True)
setVisibility("ISO2037SERIES2", False)
setVisibility("ISO2037SERIES1", False)
setVisibility("DIN32676SERIES1",False)
setVisibility("DIN32676SERIES2STANDARD",False)
setVisibility("DIN32676SERIES2NONSTANDARD", False)
setVisibility("DIN32676SERIES3", False)
setVisibility("DIN11850", False)





End Select	
End Sub




Public Sub setVisibility(bodyName As String, visible As Boolean)
Dim doc As PartDocument = ThisDoc.Document
Dim def As PartComponentDefinition = doc.ComponentDefinition
Dim bodies As IEnumerable(Of SurfaceBody) = def.SurfaceBodies.Cast(Of SurfaceBody)
Dim body As SurfaceBody = bodies.
Where(Function(b) b.Name.Equals(bodyName)).First()
body.Visible = visible
End Sub
Message 3 of 5
A.Acheson
in reply to: SpokenEarth

It either needs an update or  needs a physical geometry change to update the graphics. When switching category and just below where the visibility of the forms is triggered type in the model variables you want to see as your default when you switch, say smallest in the category. 

If this solved a problem, please click (accept) as solution.‌‌‌‌
Or if this helped you, please, click (like)‌‌
Regards
Alan
Message 4 of 5
SpokenEarth
in reply to: SpokenEarth

Spot on.... do you have any solution?

Message 5 of 5
JMGunnar
in reply to: SpokenEarth

 

Check this blogspot

 

 

 MultiValue.SetValueOptions(True, DefaultIndex := 0)

 

http://inventbetter.blogspot.com/2016/05/multi-value-list-controls.html

 

 

 

Can't find what you're looking for? Ask the community or share your knowledge.

Post to forums  

Autodesk Design & Make Report