pyvista.DataSetAttributes.set_vectors#

DataSetAttributes.set_vectors(vectors: ndarray[Any, dtype[number]] | Sequence[ndarray[Any, dtype[number]] | Sequence[int | float]], name: str, deep_copy=False)[ソース]#

このデータ属性のアクティブベクタを設定します.

ベクトルとは,法線ベクトルや速度場のように,大きさと方向を持った量のことです.

ベクターデータは,1セルまたは1点につき3成分でなければなりません. 非方向性のデータを追加する場合には, DataSetAttributes.set_scalars() を使用します.

パラメータ:
vectorsMatrix

データの形は (n, 3) で,nはポイントまたはセルの数に一致します.

namestr

ベクターの名称.

deep_copybool, default: False

True の場合,配列の完全なコピーを作成します. False の場合は,コピーせずに元の配列を参照します.

備考

PyVistaとVTKは,演算を行う際にベクトルとスカラーを異なる方法で扱います.ベクターデータはスカラーデータとは異なり,DataSetが変換フィルタを通過する際にジオメトリと一緒に回転されます.

非方向性のデータ(温度値や RGBA 値のような複数成分のスカラー)を追加する場合には, DataSetAttributes.set_scalars() を使用することも可能です.

ランダムなベクトルを点データとしてメッシュに追加します.

>>> import pyvista as pv
>>> import numpy as np
>>> mesh = pv.Cube()
>>> mesh.clear_data()
>>> vectors = np.random.random((mesh.n_points, 3))
>>> mesh.point_data.set_vectors(vectors, 'my-vectors')
>>> mesh.point_data
pyvista DataSetAttributes
Association     : POINT
Active Scalars  : None
Active Vectors  : my-vectors
Active Texture  : None
Active Normals  : None
Contains arrays :
    my-vectors              float64    (8, 3)               VECTORS