class_docstr: Example of a very simple GL-line visual.
  
  This shows the minimal set of methods that need to be reimplemented to 
  make a new visual class.
docstr: This method is called immediately before each draw.
  
  The *view* argument indicates which view is about to be drawn.
code: def _prepare_draw(self, view=None):
      """This method is called immediately before each draw.
  
      The *view* argument indicates which view is about to be drawn.
      """
      if self._need_upload:
          # Note that pos_buf is shared between all views, so we have no need
          # to use the *view* argument in this example. This will be true
          # for most visuals.
          self.pos_buf.set_data(self._pos)
          self._need_upload = False
  
imports: import sys
  import numpy
  from vispy import app, gloo, visuals
  from vispy.visuals.filters import Clipper, ColorFilter
  from vispy.visuals.shaders import MultiProgram
  from vispy.visuals.collections import PointCollection
  from vispy.visuals.transforms import STTransform
  from vispy.scene import SceneCanvas
  from vispy.scene.visuals import create_visual_node
label_desc: Use image node_id 4 for calling the LineVisual obj's underlying member method code with example usage: obj._prepare_draw(view) without return types