rotate_vector

DataSet.rotate_vector(vector: Iterable[float], angle: float, point=(0.0, 0.0, 0.0), transform_all_input_vectors=False, inplace=False)

Rotate mesh about a vector.

Note

See also the notes at transform() which is used by this filter under the hood.

Parameters
vectorIterable

Axes to rotate about.

anglefloat

Angle in degrees to rotate about the vector.

pointlist, optional

Point to rotate about. Defaults to origin (0.0, 0.0, 0.0).

transform_all_input_vectorsbool, optional

When True, all input vectors are transformed. Otherwise, only the points, normals and active vectors are transformed.

inplacebool, optional

Updates mesh in-place.

Returns
pyvista.DataSet

Rotated dataset.

Examples

Rotate a mesh 30 degrees about the (1, 1, 1) axis.

>>> import pyvista
>>> mesh = pyvista.Cube()
>>> rot = mesh.rotate_vector((1, 1, 1), 30, inplace=False)

Plot the rotated mesh.

>>> pl = pyvista.Plotter()
>>> _ = pl.add_mesh(rot)
>>> _ = pl.add_mesh(mesh, style='wireframe', line_width=3)
>>> _ = pl.add_axes_at_origin()
>>> pl.show()
../../../_images/pyvista-DataSet-rotate_vector-1_00_00.png