public void dolly(double zDelta){
  double distance=camera.getDistanceToCoR();
  zDelta=zDelta * distance * 0.01;
  if (((distance + zDelta) < closestDistance) && (zDelta < 0)) {
    return;
  }
  direction.set(camera.getDirection());
  location.set(camera.getLocation());
  location.subtractLocal(direction.multiplyLocal(zDelta));
  distance=location.distance(sceneBounds.getCenter());
  if ((distance > sceneBounds.getRadius() * 4) && (zDelta > 0)) {
    return;
  }
  camera.setLocation(location);
  updateFromCamera();
  updateCrosshair();
  updateGeometricState(0);
  changed.set(true);
  updateStatus();
}

public void dolly ( double zDelta ) { double distance = camera . getDistanceToCoR ( ) ; zDelta = zDelta * distance * 0.01 ; if ( ( ( distance + zDelta ) < closestDistance ) && ( zDelta < 0 ) ) { return ; } direction . set ( camera . getDirection ( ) ) ; location . set ( camera . getLocation ( ) ) ; location . subtractLocal ( direction . multiplyLocal ( zDelta ) ) ; distance = location . distance ( sceneBounds . getCenter ( ) ) ; if ( ( distance > sceneBounds . getRadius ( ) * 4 ) && ( zDelta > 0 ) ) { return ; } camera . setLocation ( location ) ; updateFromCamera ( ) ; updateCrosshair ( ) ; updateGeometricState ( 0 ) ; changed . set ( true ) ; updateStatus ( ) ; }
perform a dolly operation
