          return { x: x(targetX), y: y(targetY) };      }        var diagonal = d0.svg.diagonal()          .source(getSource)          .target(getTarget);        that.update = function (transitionTime) {          tTime = transitionTime || 0;            path.transition()              .duration(tTime)              .attr('d', diagonal);            step.selectAll('