code: function(id, opt){
      if (this.root != id && !this.busy) {
        this.busy = true;
        this.root = id;
        that = this;
        this.controller.onBeforeCompute(this.graph.getNode(id));
        var obj = this.getNodeAndParentAngle(id);
  
        // second constraint
        this.tagChildren(obj.parent, id);
        this.parent = obj.parent;
        this.compute('end');
  
        // first constraint
        var thetaDiff = obj.theta - obj.parent.endPos.theta;
        this.graph.eachNode(function(elem){
          elem.endPos.set(elem.endPos.getp().add($P(thetaDiff, 0)));
        });
  
        var mode = this.config.interpolation;
        opt = $.merge( {
          onComplete: $.empty
        }, opt || {});
  
        this.fx.animate($.merge( {
          hideLabels: true,
          modes: [
            mode
          ]
        }, opt, {
          onComplete: function(){
            that.busy = false;
            opt.onComplete();
          }
        }));
      }
    }
docs: /*
  Method: onClick
  
  Animates the <RGraph> to center the node specified by *id*.
  
  Parameters:
  
  id - A <Graph.Node> id.
  opt - (optional|object) An object containing some extra properties described below
  hideLabels - (boolean) Default's *true*. Hide labels when performing the animation.
  
  Example:
  
  (start code js)
  rgraph.onClick('someid');
  or also...
  rgraph.onClick('someid', {
  hideLabels: false
  });
  (end code)