class_docstr: An internal class to manage filters/algorithms for polydata datasets.
class_docstr_tok: ["An","internal","class","to","manage","filters\/algorithms","for","polydata","datasets","."]
docstr: Plot the point normals of a mesh.
  
  Parameters
  ----------
  show_mesh : bool, default: true
      Plot the mesh itself.
  
  mag : float, default: 1.0
      Size magnitude of the normal arrows.
  
  flip : bool, default: False
      Flip the normal direction when ``True``.
  
  use_every : int, default: 1
      Display every nth normal.  By default every normal is
      displayed.  Display every 10th normal by setting this
      parameter to 10.
  
  faces : bool, default: False
      Plot face normals instead of the default point normals.
  
  color : ColorLike, optional
      Color of the arrows.  Defaults to
      :attr:`pyvista.plotting.themes.Theme.edge_color`.
  
  **kwargs : dict, optional
      All additional keyword arguments will be passed to
      :func:`pyvista.Plotter.add_mesh`.
  
  Returns
  -------
  pyvista.CameraPosition
      List of camera position, focal point, and view up.
      Returned when ``return_cpos`` is ``True``.
  
  Examples
  --------
  Plot the point normals of a sphere.
  
  >>> import pyvista as pv
  >>> sphere = pv.Sphere(phi_resolution=10, theta_resolution=10)
  >>> sphere.plot_normals(mag=0.1, show_edges=True)
  
  Plot the face normals of a sphere.
  
  >>> import pyvista as pv
  >>> sphere = pv.Sphere(phi_resolution=10, theta_resolution=10)
  >>> sphere.plot_normals(mag=0.1, faces=True, show_edges=True)
docstr_tok: ["Plot","the","point","normals","of","a","mesh",".","Parameters","--","--","--","--","--","show_mesh",":","bool",",","default",":","true","Plot","the","mesh","itself",".","mag",":","float",",","default",":","1.0","Size","magnitude","of","the","normal","arrows",".","flip",":","bool",",","default",":","False","Flip","the","normal","direction","when","``","True","``",".","use_every",":","int",",","default",":","1","Display","every","nth","normal",".","By","default","every","normal","is","displayed",".","Display","every","10th","normal","by","setting","this","parameter","to","10.","faces",":","bool",",","default",":","False","Plot","face","normals","instead","of","the","default","point","normals",".","color",":","ColorLike",",","optional","Color","of","the","arrows",".","Defaults","to",":","attr",":","`","pyvista.plotting.themes.Theme.edge_color","`",".","*","*","kwargs",":","dict",",","optional","All","additional","keyword","arguments","will","be","passed","to",":","func",":","`","pyvista.Plotter.add_mesh","`",".","Returns","--","--","--","-","pyvista.CameraPosition","List","of","camera","position",",","focal","point",",","and","view","up",".","Returned","when","``","return_cpos","``","is","``","True","``",".","Examples","--","--","--","--","Plot","the","point","normals","of","a","sphere",".",">",">",">","import","pyvista","as","pv",">",">",">","sphere","=","pv.Sphere","(","phi_resolution=10",",","theta_resolution=10",")",">",">",">","sphere.plot_normals","(","mag=0.1",",","show_edges=True",")","Plot","the","face","normals","of","a","sphere",".",">",">",">","import","pyvista","as","pv",">",">",">","sphere","=","pv.Sphere","(","phi_resolution=10",",","theta_resolution=10",")",">",">",">","sphere.plot_normals","(","mag=0.1",",","faces=True",",","show_edges=True",")"]
code: def plot_normals(
      self,
      show_mesh=True,
      mag=1.0,
      flip=False,
      use_every=1,
      faces=False,
      color=None,
      **kwargs,
  ):
      """Plot the point normals of a mesh.
  
      Parameters
      ----------
      show_mesh : bool, default: true
          Plot the mesh itself.
  
      mag : float, default: 1.0
          Size magnitude of the normal arrows.
  
      flip : bool, default: False
          Flip the normal direction when ``True``.
  
      use_every : int, default: 1
          Display every nth normal.  By default every normal is
          displayed.  Display every 10th normal by setting this
          parameter to 10.
  
      faces : bool, default: False
          Plot face normals instead of the default point normals.
  
      color : ColorLike, optional
          Color of the arrows.  Defaults to
          :attr:`pyvista.plotting.themes.Theme.edge_color`.
  
      **kwargs : dict, optional
          All additional keyword arguments will be passed to
          :func:`pyvista.Plotter.add_mesh`.
  
      Returns
      -------
      pyvista.CameraPosition
          List of camera position, focal point, and view up.
          Returned when ``return_cpos`` is ``True``.
  
      Examples
      --------
      Plot the point normals of a sphere.
  
      >>> import pyvista as pv
      >>> sphere = pv.Sphere(phi_resolution=10, theta_resolution=10)
      >>> sphere.plot_normals(mag=0.1, show_edges=True)
  
      Plot the face normals of a sphere.
  
      >>> import pyvista as pv
      >>> sphere = pv.Sphere(phi_resolution=10, theta_resolution=10)
      >>> sphere.plot_normals(mag=0.1, faces=True, show_edges=True)
  
      """
      plotter = pyvista.Plotter(
          off_screen=kwargs.pop("off_screen", None),
          notebook=kwargs.pop("notebook", None),
      )
      if show_mesh:
          plotter.add_mesh(self, **kwargs)
  
      color = pyvista.Color(
          color, default_color=pyvista.global_theme.edge_color
      )
  
      if faces:
          centers = self.cell_centers().points[::use_every]
          normals = self.cell_normals
      else:
          centers = self.points[::use_every]
          normals = self.point_normals
  
      if flip:
          normals *= -1
  
      plotter.add_arrows(
          centers,
          normals[::use_every],
          mag=mag,
          color=color,
          show_scalar_bar=False,
      )
  
      return plotter.show()
  
imports: import collections.abc
  import warnings
  import numpy
  import pyvista
  from pyvista.core import _vtk_core
  from pyvista.core.errors import MissingDataError, NotAllTrianglesError, PyVistaFutureWarning, VTKVersionError
  from pyvista.core.filters import _get_output, _update_alg
  from pyvista.core.filters.data_set import DataSetFilters
  from pyvista.core.utilities.arrays import FieldAssociation, get_array, get_array_association, set_default_active_scalars, vtk_id_list_to_array
  from pyvista.core.utilities.geometric_objects import NORMALS
  from pyvista.core.utilities.helpers import generate_plane, wrap
  from pyvista.core.utilities.misc import abstract_class, assert_empty_kwargs
label_desc: Use image node_id 30 for calling the PolyDataFilters obj's underlying member method code with example usage: obj.plot_normals(show_mesh, mag, flip, use_every, faces, color) and returns: plotter