import k3d
import k3d.platonic as platonic
import math
from ipywidgets import widgets, link
plot2 = k3d.plot(menu_visibility=False)
meshes = [
platonic.Dodecahedron().mesh,
platonic.Cube().mesh,
platonic.Icosahedron().mesh,
platonic.Octahedron().mesh,
platonic.Tetrahedron().mesh
]
colors = [0xff0000, 0x00ff00, 0x0000ff, 0xffff00, 0xff00ff]
menu = []
for i, obj in enumerate(meshes):
rad = math.radians(i / len(meshes) * 360)
radius = 3.5
obj.transform.translation = [math.sin(rad) * radius, math.cos(rad) * radius, 0]
obj.color = colors[i]
plot2 += obj
w = widgets.Checkbox(
value=True,
description='Object #' + str(i),
disabled=False,
indent=False
)
link((w, 'value'), (obj, 'visible'))
menu.append(w)
display(widgets.HBox(menu))
plot2.display()