class_docstr: Provides a rectangular widget to which its subscene is rendered.
  
  Three classes work together when using a ViewBox:
  * The :class:`SubScene` class describes a "world" coordinate system and the
  entities that live inside it.
  * ViewBox is a "window" through which we view the
  subscene. Multiple ViewBoxes may view the same subscene.
  * :class:`Camera` describes both the perspective from which the
  subscene is rendered, and the way user interaction affects that
  perspective.
  
  In general it is only necessary to create the ViewBox; a SubScene and
  Camera will be generated automatically.
  
  Parameters
  ----------
  camera : instance of Camera | str | None
      The camera through which to view the SubScene. If None, then a
      PanZoomCamera (2D interaction) is used. If str, then the string is
      used as the argument to :func:`make_camera`.
  **kwargs : dict
      Extra keyword arguments to pass to `Widget`.
class_docstr_tok: ["Provides","a","rectangular","widget","to","which","its","subscene","is","rendered",".","Three","classes","work","together","when","using","a","ViewBox",":","*","The",":","class",":","`","SubScene","`","class","describes","a","``","world","''","coordinate","system","and","the","entities","that","live","inside","it",".","*","ViewBox","is","a","``","window","''","through","which","we","view","the","subscene",".","Multiple","ViewBoxes","may","view","the","same","subscene",".","*",":","class",":","`","Camera","`","describes","both","the","perspective","from","which","the","subscene","is","rendered",",","and","the","way","user","interaction","affects","that","perspective",".","In","general","it","is","only","necessary","to","create","the","ViewBox",";","a","SubScene","and","Camera","will","be","generated","automatically",".","Parameters","--","--","--","--","--","camera",":","instance","of","Camera","|","str","|","None","The","camera","through","which","to","view","the","SubScene",".","If","None",",","then","a","PanZoomCamera","(","2D","interaction",")","is","used",".","If","str",",","then","the","string","is","used","as","the","argument","to",":","func",":","`","make_camera","`",".","*","*","kwargs",":","dict","Extra","keyword","arguments","to","pass","to","`","Widget","`","."]
docstr: Resize event handler
  
  Parameters
  ----------
  event : instance of Event
      The event.
docstr_tok: ["Resize","event","handler","Parameters","--","--","--","--","--","event",":","instance","of","Event","The","event","."]
code: def on_resize(self, event):
      """Resize event handler
  
      Parameters
      ----------
      event : instance of Event
          The event.
      """
      if self._scene is None:
          # happens during init
          return
      self._update_scene_clipper()
  
file_path: vispy/vispy/scene/widgets/viewbox.py
imports: from __future__ import division
  from typing import Union
  import numpy
  from .widget import Widget
  from ..subscene import SubScene
  from ..cameras import make_camera, BaseCamera
  from ...visuals.filters import Clipper
label_desc: Use image node_id 8 for calling the ViewBox obj's underlying member method code with example usage: obj.on_resize(event) without return types