class_docstr: Mesh visual
  
  Parameters
  ----------
  vertices : array-like | None
      The vertices.
  faces : array-like | None
      The faces.
  vertex_colors : array-like | None
      Colors to use for each vertex.
  face_colors : array-like | None
      Colors to use for each face.
  color : instance of Color
      The color to use.
  vertex_values : array-like | None
      The values to use for each vertex (for colormapping).
  meshdata : instance of MeshData | None
      The meshdata.
  shading : str | None
      Shading to use. This uses the
      :class:`~vispy.visuals.filters.mesh.ShadingFilter`
      filter introduced in VisPy 0.7. This class provides additional
      features that are available when the filter is attached manually.
      See 'examples/basics/scene/mesh_shading.py' for an example.
  mode : str
      The drawing mode.
  **kwargs : dict
      Keyword arguments to pass to `Visual`.
  
  Notes
  -----
  Additional functionality is available through filters. Mesh-specific
  filters can be found in the :mod:`vispy.visuals.filters.mesh` module.
  
  This class emits a `data_updated` event when the mesh data is updated. This
  is used for example by filters for synchronization.
  
  Examples
  --------
  Create a primitive shape from a helper function:
  
  >>> from vispy.geometry import create_sphere
  >>> meshdata = create_sphere()
  >>> mesh = MeshVisual(meshdata=meshdata)
  
  Create a custom shape:
  
  >>> # A rectangle made out of two triangles.
  >>> vertices = [(0, 0, 0), (1, 0, 1), (1, 1, 1), (0, 1, 0)]
  >>> faces = [(0, 1, 2), (0, 2, 3)]
  >>> mesh = MeshVisual(vertices=vertices, faces=faces)
class_docstr_tok: ["Mesh","visual","Parameters","--","--","--","--","--","vertices",":","array-like","|","None","The","vertices",".","faces",":","array-like","|","None","The","faces",".","vertex_colors",":","array-like","|","None","Colors","to","use","for","each","vertex",".","face_colors",":","array-like","|","None","Colors","to","use","for","each","face",".","color",":","instance","of","Color","The","color","to","use",".","vertex_values",":","array-like","|","None","The","values","to","use","for","each","vertex","(","for","colormapping",")",".","meshdata",":","instance","of","MeshData","|","None","The","meshdata",".","shading",":","str","|","None","Shading","to","use",".","This","uses","the",":","class",":","`","~vispy.visuals.filters.mesh.ShadingFilter","`","filter","introduced","in","VisPy","0.7",".","This","class","provides","additional","features","that","are","available","when","the","filter","is","attached","manually",".","See","'examples\/basics\/scene\/mesh_shading.py","'","for","an","example",".","mode",":","str","The","drawing","mode",".","*","*","kwargs",":","dict","Keyword","arguments","to","pass","to","`","Visual","`",".","Notes","--","--","-","Additional","functionality","is","available","through","filters",".","Mesh-specific","filters","can","be","found","in","the",":","mod",":","`","vispy.visuals.filters.mesh","`","module",".","This","class","emits","a","`","data_updated","`","event","when","the","mesh","data","is","updated",".","This","is","used","for","example","by","filters","for","synchronization",".","Examples","--","--","--","--","Create","a","primitive","shape","from","a","helper","function",":",">",">",">","from","vispy.geometry","import","create_sphere",">",">",">","meshdata","=","create_sphere","(",")",">",">",">","mesh","=","MeshVisual","(","meshdata=meshdata",")","Create","a","custom","shape",":",">",">",">","#","A","rectangle","made","out","of","two","triangles",".",">",">",">","vertices","=","[","(","0",",","0",",","0",")",",","(","1",",","0",",","1",")",",","(","1",",","1",",","1",")",",","(","0",",","1",",","0",")","]",">",">",">","faces","=","[","(","0",",","1",",","2",")",",","(","0",",","2",",","3",")","]",">",">",">","mesh","=","MeshVisual","(","vertices=vertices",",","faces=faces",")"]
docstr: The mesh data
docstr_tok: ["The","mesh","data"]
code: def mesh_data(self):
      """The mesh data"""
      return self._meshdata
  
imports: from __future__ import division
  from functools import lru_cache
  import numpy
  from .visual import Visual
  from .shaders import Function, FunctionChain
  from ..gloo import VertexBuffer
  from ..geometry import MeshData
  from ..color import Color, get_colormap
  from ..color.colormap import CubeHelixColormap
  from ..util.event import Event
label_desc: Use image node_id 12 for calling the MeshVisual obj's underlying member method code with example usage: obj.mesh_data() and returns: self