rotate_vector#

PolyData.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-PolyData-rotate_vector-1_00_00.png