public void update(NavigationCameraUpdate update, int durationMs, @Nullable MapboxMap.CancelableCallback callback) {
    animationDelegate.render(update, durationMs, callback);
  }
public void update ( NavigationCameraUpdate update , int durationMs , @ Nullable MapboxMap . CancelableCallback callback ) { animationDelegate . render ( update , durationMs , callback ) ; }
Animate the camera to a new location defined within {@link CameraUpdate} passed to the
{@link NavigationCameraUpdate} using a transition animation that evokes powered flight. The animation will
last a specified amount of time given in milliseconds. A callback can be used to be notified when animating
the camera stops. During the animation, a call to {@link MapboxMap#getCameraPosition()} returns an intermediate
location of the camera in flight. If the camera is in a tracking mode,
this animation is going to be ignored, or break the tracking, based on the {@link CameraUpdateMode}.

@param update     the change that should be applied to the camera.
@param durationMs the duration of the animation in milliseconds. This must be strictly
positive, otherwise an IllegalArgumentException will be thrown.
@param callback   an optional callback to be notified from the main thread when the animation
stops. If the animation stops due to its natural completion, the callback
will be notified with onFinish(). If the animation stops due to interruption
by a later camera movement or a user gesture, onCancel() will be called.
Do not update or animate the camera from within onCancel(). If a callback
isn't required, leave it as null.
@see CameraUpdateMode for how this update interacts with the current tracking