code: def on_draw(self, event):
      # Clear
      gloo.clear()
  
      # Draw
      self._program["u_time"] = time.time() - self._starttime
      self._program.draw("points")
  
      # New explosion?
      if time.time() - self._starttime > 1.5:
          self._new_explosion()
  
file_path: vispy/examples/demo/gloo/fireworks.py
imports: import time
  import numpy
  from vispy import gloo, app
label_desc: Use image node_id 3 for calling the Canvas obj's underlying member method code with example usage: obj.on_draw(event) without return types