multi-body parts visibility

multi-body parts visibility

SpokenEarth
Advocate Advocate
492 Views
4 Replies
Message 1 of 5

multi-body parts visibility

SpokenEarth
Advocate
Advocate

Help needed with multi-body visibility.

check the link.

 

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

0 Likes
493 Views
4 Replies
Replies (4)
Message 2 of 5

SpokenEarth
Advocate
Advocate

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
0 Likes
Message 3 of 5

A.Acheson
Mentor
Mentor

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
0 Likes
Message 4 of 5

SpokenEarth
Advocate
Advocate

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

0 Likes
Message 5 of 5

JMGunnar
Collaborator
Collaborator

 

Check this blogspot

 

 

 MultiValue.SetValueOptions(True, DefaultIndex := 0)

 

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

 

 

 

0 Likes