pyvista.DataSet.find_containing_cell#
- DataSet.find_containing_cell(point: ndarray[Any, dtype[number]] | Sequence[int | float] | Sequence[ndarray[Any, dtype[number]] | Sequence[int | float]]) int | ndarray [ソース]#
与えられた点を含みますセルのインデックスを検索します.
- パラメータ:
- point
Vector
,Matrix
照会する点の座標(長さ3),または形状
(n, 3)
のn
点のnumpy.ndarray
配列です.
- point
- 戻り値:
int
ornumpy.ndarray
指定された点を含みます,このメッシュのセルのインデックス.
バージョン 0.35.0 で変更:
(1, 3)
形式の入力は(1,)
形式のnumpy.ndarray
を返すようになりました.
参考
例
16個の同じ大きさのセルを持つ単位正方形を作成し,点
[0.3, 0.3, 0.0]
を含みますセルを見つけます.>>> import pyvista as pv >>> mesh = pv.ImageData( ... dimensions=[5, 5, 1], spacing=[1 / 4, 1 / 4, 0] ... ) >>> mesh ImageData... >>> mesh.find_containing_cell([0.3, 0.3, 0.0]) 5
メッシュドメイン外の点は
-1
を返します.>>> mesh.find_containing_cell([0.3, 0.3, 1.0]) -1
メッシュ内の1000個のランダムな点を含みますセルを見つけます.
>>> import numpy as np >>> points = np.random.random((1000, 3)) >>> indices = mesh.find_containing_cell(points) >>> indices.shape (1000,)