pyvista.plotting.widgets.WidgetHelper.add_affine_transform_widget

pyvista.plotting.widgets.WidgetHelper.add_affine_transform_widget#

WidgetHelper.add_affine_transform_widget(
actor,
origin=None,
start: bool = True,
scale=0.15,
line_radius=0.02,
always_visible: bool = True,
axes_colors=None,
axes=None,
release_callback=None,
interact_callback=None,
)[ソース]#

3D affine 変換ウィジェットを追加します.

このウィジェットは,マウスの左ボタンを使って,平行移動と回転を含むインタラクティブな変形を可能にする.

パラメータ:
actorpyvista.Actor

ウィジェットがアタッチされているアクター.

originsequence[float], optional

ウィジェットの原点.デフォルトはメインアクターの原点です.

startbool, default: True

もしTrueなら,すぐにウィジェットを開始します.

scalefloat, default: 0.15

アクターの長さに対するウィジェットのスケール係数.

line_radiusfloat, default: 0.02

ウィジェットを構成する線の相対半径.

always_visiblebool, default: True

ウィジェットを常に表示するようにします.これを False に設定すると,プロッタ内の他のアクタによってウィジェットのジオメトリが隠されます.

axes_colorstuple[ColorLike], optional

デフォルトでテーマを使用します.各軸の色を設定するには, pyvista.global_theme.axes.x_color = 1 または ('r', 'g', 'b') のように tuple で設定します.

axesnumpy.ndarray, optional

(3, 3) X軸,Y軸,Z軸を定義するNumpy配列.デフォルトでは,これはデフォルトの座標系と一致する.

release_callbackcallable(), optional

マウスの左ボタンを離すときにこのメソッドを呼び出します.このメソッドにはアクタの user_matrix が渡されます.

interact_callbackcallable(), optional

マウスの左ボタンが押下され,有効な移動アクタが選択された状態でマウスを移動するときに,このメソッドを呼び出します.このメソッドには,アクタの user_matrix が渡されます.

戻り値:
pyvista.plotting.widgets.AffineWidget3D

affine ウィジェット.

備考

After interacting with the actor, the transform will be stored within pyvista.Prop3D.user_matrix but will not be applied to the dataset. Use this matrix in conjunction with pyvista.DataSetFilters.transform() to transform the dataset.

3d affine ウィジェットを追加します.

>>> import pyvista as pv
>>> pl = pv.Plotter()
>>> actor = pl.add_mesh(pv.Sphere())
>>> widget = pl.add_affine_transform_widget(actor)
>>> pl.show()
../../../_images/pyvista-plotting-widgets-WidgetHelper-add_affine_transform_widget-1_00_00.png

アクターから変換にアクセスします.

>>> actor.user_matrix
array([[1., 0., 0., 0.],
       [0., 1., 0., 0.],
       [0., 0., 1., 0.],
       [0., 0., 0., 1.]])