[英]How do I import external geometry with pythreejs
我正在尝试使用pythreejs将外部stl模型导入到jupyter python笔记本中,但似乎无法使其正常工作。 模型格式不一定必须是stl。 它可以是json或其他任何形式。 本质上,我只想将外部模型导入运行pythreejs的jupyter笔记本中。
如果您不熟悉jupyter并且知道如何使pythreejs导入外部模型,那么我也认为这是一种解决方案。
任何帮助,将不胜感激!
不知道是否有人对此问题仍然感兴趣,但是您现在可以使用我构建的viewscad
模块轻松完成此操作(用于其他用途):
import viewscad
r = viewscad.Renderer()
r._render_stl('my_stl.stl')
据我了解您的问题,您正在尝试通过pythreejs
将STL模型文件导入jupyter笔记本。
我认为jupyter笔记本约束不是一个重要的约束,因为您基本上只是在Web浏览器环境中编写Python代码。 因此,此问题的症结在于如何使用pythreejs
读取STL模型文件。
从pythreejs示例中注意到,第一步是geometry
的导入:
linesgeom = PlainGeometry(vertices=[[0, 0, 0],
[size, 0, 0],
[0, 0, 0],
[0, size, 0],
[0, 0, 0],
[0, 0, size]],
colors = ['red', 'red', 'green', 'green', 'white', 'orange'])
接下来,如果您深入研究pythreejs
的Github存储库上的源代码,就会发现可以在PlainGeometry
指定vertices
和faces
。 具体来说,您将vertices
指定为列表(就像上面的示例一样),并且将faces
为列表。 指定这两个参数后,您将拥有一个完全定义的PlainGeometry
对象,并且可以继续使用pythreejs
示例中显示的渲染管道。
那么如何将vertices
和faces
作为列表导入呢? 好吧,鉴于您的输入是灵活的,这取决于您,您可能需要在这里进行一些挖掘,以了解最适合您的环境的内容(例如,性能约束,依赖关系约束等)。 使用您的STL示例,一种解决方案可以是使用numpy-stl解析STL输入,并且可能具有将vertices
和faces
数据作为此numpy-stl
对象的列表返回的功能,这些数据是在STL导入时创建的。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.