constructor(width, height, fov, near, far, orthoNear, orthoFar) {
    super();

    this.fov = fov;

    this.far = far;
    this.near = near;

    this.left = -(width / 2);
    this.right = (width / 2);
    this.top = (height / 2);
    this.bottom = -(height / 2);

    this.aspect = width / height;
    this.zoom = 1;
    this.view = null;
    // We could also handle the projectionMatrix internally, but just wanted to test nested camera objects

    this.cameraO = new THREE.OrthographicCamera(this.left, this.right, this.top, this.bottom, orthoNear, orthoFar);
    this.cameraP = new THREE.PerspectiveCamera(fov, width / height, near, far);

    this.toPerspective();
  }
@author zz85 / http://twitter.com/blurspline / http://www.lab4games.net/zz85/blog

   A general perpose camera, for setting FOV, Lens Focal Length,
       and switching between perspective and orthographic views easily.
       Use this only if you do not wish to manage
       both a Orthographic and Perspective Camera