'Initializes mouse button callbacks to enable 3D rotation of
the axes.  Also optionally sets the mouse buttons for 3D rotation
and zooming.
Argument      Description
*rotate_btn*  The integer or list of integers specifying which mouse
button or buttons to use for 3D rotation of the axes.
Default = 1.
*zoom_btn*    The integer or list of integers specifying which mouse
button or buttons to use to zoom the 3D axes.
Default = 3.'

def mouse_init(self, rotate_btn=1, zoom_btn=3):

    self.button_pressed = None
    canv = self.figure.canvas
    if (canv is not None):
        c1 = canv.mpl_connect(u'motion_notify_event', self._on_move)
        c2 = canv.mpl_connect(u'button_press_event', self._button_press)
        c3 = canv.mpl_connect(u'button_release_event', self._button_release)
        self._cids = [c1, c2, c3]
    else:
        warnings.warn(u"Axes3D.figure.canvas    is    'None',    mouse    rotation    disabled.        Set    canvas    then    call    Axes3D.mouse_init().")
    self._rotate_btn = np.atleast_1d(rotate_btn).tolist()
    self._zoom_btn = np.atleast_1d(zoom_btn).tolist()
