code: def on_mouse_wheel(self, event):
      dx = np.sign(event.delta[1]) * 0.05
      scale_x, scale_y = self.program["u_scale"]
      scale_x_new, scale_y_new = (
          scale_x * math.exp(2.5 * dx),
          scale_y * math.exp(2.5 * dx),
      )
      self.program["u_scale"] = (scale_x_new, scale_y_new)
      self.update()
  
file_path: vispy/examples/demo/gloo/signals.py
imports: from vispy import gloo
  from vispy import app
  import numpy
  import math
label_desc: Use image node_id 6 for calling the Canvas obj's underlying member method code with example usage: obj.on_mouse_wheel(event) without return types