簡體   English   中英

如何使用pythreejs導入外部幾何

[英]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指定verticesfaces 具體來說,您將vertices指定為列表(就像上面的示例一樣),並且將faces為列表。 指定這兩個參數后,您將擁有一個完全定義的PlainGeometry對象,並且可以繼續使用pythreejs示例中顯示的渲染管道。

那么如何將verticesfaces作為列表導入呢? 好吧,鑒於您的輸入是靈活的,這取決於您,您可能需要在這里進行一些挖掘,以了解最適合您的環境的內容(例如,性能約束,依賴關系約束等)。 使用您的STL示例,一種解決方案可以是使用numpy-stl解析STL輸入,並且可能具有將verticesfaces數據作為此numpy-stl對象的列表返回的功能,這些數據是在STL導入時創建的。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM