我探索了如何在 jupyter 笔记本中内联渲染 gltf/glb 文件以保持查看器回调交互性完整的可用方法。我最终使用 vtk 和 k3d 来实现这一目标。我遇到的两个障碍是:
-
如何使用 vtkGLTFReader() 从 vtkPolyData 对象中获取
glb 并在 k3d 中渲染它们?SOLUTION:参见评论中发布的方法。
-
如何显示嵌入在 gltf/glb 中的颜色/纹理以显示它们
k3d?
以下是获取 vtkPolyData 并将其传递给 k3d 的代码。
import k3d
import vtk
import ipywidgets as widgets
reader = vtk.vtkGLTFReader()
reader.SetFileName('sample_glb/GroundVehicle.glb')
reader.Update()
plot = k3d.plot()
mb = reader.GetOutput()
iterator = mb.NewIterator()
vtk_polyobjects = []
while not iterator.IsDoneWithTraversal():
item = iterator.GetCurrentDataObject()
vtk_polyobjects.append(item)
iterator.GoToNextItem()
for obj in vtk_polyobjects:
plot += k3d.vtk_poly_data(obj, color=0x222222)
plot.display()
debug_info = widgets.HTML()
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)