pyvista.PolyData.save#

PolyData.save(filename, binary=True, texture=None, recompute_normals=True)[ソース]#

サーフェスメッシュをディスクに書き込みます.

書き込まれるファイルは,ASCIIまたはバイナリのply,stl,vtkのメッシュファイルです.

パラメータ:
filenamestr

書き込むメッシュのファイル名.ftypeで上書きしない限り,ファイルタイプはファイル名の拡張子から推測されます.次のいずれかのタイプになります ('.ply', '.stl', '.vtk) .

binarybool, default: True

True の場合はバイナリとして, False の場合はASCIIとしてファイルを書き込みます.

texturestr, numpy.ndarray, optional

PLYファイルを使用する際に,単一のテクスチャ配列をファイルに書き込みます. テクスチャ配列は,データ型が np.uint8 の3成分または4成分の配列である必要があります. 配列はセル配列またはポイント配列で,配列がすでにPolyDataに存在する場合は文字列にすることもできます.

文字列が指定された場合は,テクスチャ配列がその名前でディスクに保存されます. 配列が指定された場合,テクスチャの配列は,その配列がアルファチャンネルを含んでいる場合は 'RGBA' として保存され(つまり4コンポーネントの配列),配列が単に3コンポーネントの配列である場合は RGB' として保存されます.

注釈

この機能は,PLYファイルの保存時にのみ有効です.

recompute_normalsbool, default: True

True の場合,ply または stl フォーマットが選択されると,メッシュが適切に保存されるように面の法線が計算されます. False に設定すると,PolyDataにすでに存在する法線配列が代わりに保存されます.

備考

バイナリファイルはASCIIよりもはるかに高速に書き込み,ファイルサイズも小さくなります

メッシュをSTLとして保存します.

>>> import pyvista as pv
>>> sphere = pv.Sphere()
>>> sphere.save('my_mesh.stl')  

メッシュをPLYとして保存します.

>>> sphere = pv.Sphere()
>>> sphere.save('my_mesh.ply')  

メッシュをPLYとしてテクスチャ配列とともに保存します. ここでは,テクスチャを表す単純なRGB配列も作成します.

>>> import numpy as np
>>> sphere = pv.Sphere()
>>> texture = np.zeros((sphere.n_points, 3), np.uint8)
>>> # Just the green channel is set as a repeatedly
>>> # decreasing value
>>> texture[:, 1] = np.arange(sphere.n_points)[::-1]
>>> sphere.point_data['my_texture'] = texture
>>> sphere.save(
...     'my_mesh.ply', texture='my_texture'
... )  

あるいは,テクスチャの配列だけを指定することもできます. これはアルファチャンネルを含まないため, 'RGB' としてファイルに書き込まれます.

>>> sphere.save('my_mesh.ply', texture=texture)  

メッシュをVTKファイルとして保存します.

>>> sphere = pv.Sphere()
>>> sphere.save('my_mesh.vtk')