pyvista.DataSet.find_cells_along_line#

DataSet.find_cells_along_line(pointa: ndarray[Any, dtype[number]] | Sequence[int | float], pointb: ndarray[Any, dtype[number]] | Sequence[int | float], tolerance: float = 0.0) ndarray[ソース]#

境界が線と交差するセルのインデックスを求めます.

ラインとは, pointa から pointb までを指します.

パラメータ:
pointaVector

ラインの開始点の長さ3の座標.

pointbVector

ラインの終了点の長さ3の座標.

tolerancefloat, default: 0.0

ラインに沿ってセルを見つけるために使用する絶対的な許容値です.

戻り値:
numpy.ndarray

線と交差する(複数の)セルのインデックス.

警告

このメソッドは,境界が線と交差しているセルを返す.これは,線がセル自身と交差していない可能性があることを意味します.線と交差するセルを得るには, pyvista.DataSet.find_cells_intersecting_line() を用います.

>>> import pyvista as pv
>>> mesh = pv.Sphere()
>>> mesh.find_cells_along_line([0.0, 0, 0], [1.0, 0, 0])
array([  86,   87, 1652, 1653])