pyvista.PolyData.faces#

property PolyData.faces: ndarray[Any, dtype[integer]][ソース]#

このPolyDataの面の接続性配列を返します.

面の配列は次のように構成されています:

[n0, p0_0, p0_1, ..., p0_n, n1, p1_0, p1_1, ..., p1_n, ...]

ここで, n0 は面0の点の数, pX_Y は面XのY番目の点です.

例えば,三角形と四角形は次のように表現されます:

[3, 0, 1, 2, 4, 0, 1, 3, 4]

ここで,2つの個別の面は [3, 0, 1, 2][4, 0, 1, 3, 4] となる.

戻り値:
numpy.ndarray

面のコネクティビティの配列です.

備考

返された配列はその場で変更することはできず,変更しようとすると ValueError が発生します.

ただし,面を直接設定することも可能です.例をご覧ください.

>>> import pyvista as pv
>>> plane = pv.Plane(i_resolution=2, j_resolution=2)
>>> plane.faces
array([4, 0, 1, 4, 3, 4, 1, 2, 5, 4, 4, 3, 4, 7, 6, 4, 4, 5, 8, 7])

面には,面ごとのポイント数を示す "padding" が含まれていることに注意してください.

>>> plane.faces.reshape(-1, 5)
array([[4, 0, 1, 4, 3],
       [4, 1, 2, 5, 4],
       [4, 3, 4, 7, 6],
       [4, 4, 5, 8, 7]])

面を直接設定します.次の例では,1つの正方形の面を持つ単純な平面を作成し,代わりに2つの三角形を持つように変更しています.

>>> mesh = pv.Plane(i_resolution=1, j_resolution=1)
>>> mesh.faces = [3, 0, 1, 2, 3, 3, 2, 1]
>>> mesh.faces
array([3, 0, 1, 2, 3, 3, 2, 1])