class_docstr: 3D camera class that orbits around a center point while
  maintaining a view on a center point.
  
  For this camera, the ``scale_factor`` indicates the zoom level, and
  the ``center`` indicates the position to put at the center of the
  view.
  
  When ``elevation`` and ``azimuth`` are set to 0, the camera
  points along the +y axis.
  
  Parameters
  ----------
  fov : float
      Field of view. 0.0 means orthographic projection,
      default is 45.0 (some perspective)
  elevation : float
      Elevation angle in degrees. The elevation angle represents a
      rotation of the camera around the current scene x-axis. The
      camera points along the x-y plane when the angle is 0.
  azimuth : float
      Azimuth angle in degrees. The azimuth angle represents a
      rotation of the camera around the scene z-axis according to the
      right-hand screw rule. The camera points along the y-z plane when
      the angle is 0.
  roll : float
      Roll angle in degrees. The roll angle represents a rotation of
      the camera around the current scene y-axis.
  distance : float | None
      The distance of the camera from the rotation point (only makes sense
      if fov > 0). If None (default) the distance is determined from the
      scale_factor and fov.
  translate_speed : float
      Scale factor on translation speed when moving the camera center point.
  **kwargs : dict
      Keyword arguments to pass to `BaseCamera`.
  
  Notes
  -----
  Interaction:
  
      * LMB: orbits the view around its center point.
      * RMB or scroll: change scale_factor (i.e. zoom level)
      * SHIFT + LMB: translate the center point
      * SHIFT + RMB: change FOV
class_docstr_tok: ["3D","camera","class","that","orbits","around","a","center","point","while","maintaining","a","view","on","a","center","point",".","For","this","camera",",","the","``","scale_factor","``","indicates","the","zoom","level",",","and","the","``","center","``","indicates","the","position","to","put","at","the","center","of","the","view",".","When","``","elevation","``","and","``","azimuth","``","are","set","to","0",",","the","camera","points","along","the","+y","axis",".","Parameters","--","--","--","--","--","fov",":","float","Field","of","view",".","0.0","means","orthographic","projection",",","default","is","45.0","(","some","perspective",")","elevation",":","float","Elevation","angle","in","degrees",".","The","elevation","angle","represents","a","rotation","of","the","camera","around","the","current","scene","x-axis",".","The","camera","points","along","the","x-y","plane","when","the","angle","is","0.","azimuth",":","float","Azimuth","angle","in","degrees",".","The","azimuth","angle","represents","a","rotation","of","the","camera","around","the","scene","z-axis","according","to","the","right-hand","screw","rule",".","The","camera","points","along","the","y-z","plane","when","the","angle","is","0.","roll",":","float","Roll","angle","in","degrees",".","The","roll","angle","represents","a","rotation","of","the","camera","around","the","current","scene","y-axis",".","distance",":","float","|","None","The","distance","of","the","camera","from","the","rotation","point","(","only","makes","sense","if","fov",">","0",")",".","If","None","(","default",")","the","distance","is","determined","from","the","scale_factor","and","fov",".","translate_speed",":","float","Scale","factor","on","translation","speed","when","moving","the","camera","center","point",".","*","*","kwargs",":","dict","Keyword","arguments","to","pass","to","`","BaseCamera","`",".","Notes","--","--","-","Interaction",":","*","LMB",":","orbits","the","view","around","its","center","point",".","*","RMB","or","scroll",":","change","scale_factor","(","i.e",".","zoom","level",")","*","SHIFT","+","LMB",":","translate","the","center","point","*","SHIFT","+","RMB",":","change","FOV"]
code: def __init__(
      self,
      fov=45.0,
      elevation=30.0,
      azimuth=30.0,
      roll=0.0,
      distance=None,
      translate_speed=1.0,
      **kwargs,
  ):
      super(TurntableCamera, self).__init__(fov=fov, **kwargs)
  
      # Set camera attributes
      self.azimuth = azimuth
      self.elevation = elevation
      self.roll = roll
      self.distance = distance  # None means auto-distance
      self.translate_speed = translate_speed
  
file_path: vispy/vispy/scene/cameras/turntable.py
imports: from __future__ import division
  import numpy
  from ...util import transforms
  from .perspective import Base3DRotationCamera
label_desc: Use image node_id 1 to create a new TurntableCamera object from inherited base classes: Base3DRotationCamera with example: obj = TurntableCamera(fov, elevation, azimuth, roll, distance, translate_speed)