code: def __init__(self):
      app.Canvas.__init__(
          self,
          title="Bezier lines example",
          keys="interactive",
          size=(400, 750),
      )
  
      self.lines = [
          visuals.LineVisual(
              curves.curve4_bezier(
                  (10, 0), (50, -190), (350, 190), (390, 0)
              ),
              color="w",
              width=2,
              method="agg",
          ),
          visuals.LineVisual(
              curves.curve4_bezier(
                  (10, 0), (190, -190), (210, 190), (390, 0)
              ),
              color="w",
              width=2,
              method="agg",
          ),
          visuals.LineVisual(
              curves.curve3_bezier((10, 0), (30, 200), (390, 0)),
              color="w",
              width=2,
              method="agg",
          ),
      ]
  
      # Translate each line visual downwards
      for i, line in enumerate(self.lines):
          x = 0
          y = 200 * (i + 1)
  
          line.transform = STTransform(translate=[x, y])
  
      self.texts = [
          visuals.TextVisual(
              "Third order curve",
              bold=True,
              color="w",
              font_size=14,
              pos=(200, 75),
          ),
          visuals.TextVisual(
              "Quadratic curve",
              bold=True,
              color="w",
              font_size=14,
              pos=(200, 525),
          ),
      ]
  
      for text in self.texts:
          text.transform = NullTransform()
  
      self.visuals = self.lines + self.texts
      self.show()
  
file_path: vispy/examples/basics/visuals/bezier.py
imports: import sys
  from vispy import app, gloo, visuals
  from vispy.geometry import curves
  from vispy.visuals.transforms import STTransform, NullTransform
label_desc: Use image node_id 1 to create a new Canvas object from inherited base classes: app with example: obj = Canvas()