Combiner traduire et tourner avec D3

Très probablement ce répète certains de cette SORTE de questionmais le code est trop compliqué et que l'OP n'a pas ajouté une solution de code. Et ce une question relative à la n'est plus reproductible.

J'essaie de comprendre comment les combiner rotations et des translations dans le bon ordre. Il est possible de tourner autour de l'origine comme dans cet exemple. Mais lorsque nous suivons cela avec une traduction de l'original de rotation est annulée.

Est-il possible de structurer ce pour corriger application séquentielle?

jsfidle code:

HTML:

<script src="http://d3.geotheory.co.uk/d3-transform.js"></script>

SVG:

var svg = d3.select("body").append("svg")
    .attr("width", 400)
    .attr("height", 300);

//Draw the Rectangle
var rect = svg.append("rect")
    .attr("x", 0).attr("y", 0)
    .attr("width", 50).attr("height", 100)
    .style("fill", "purple");

var rotate = d3.svg.transform().rotate(-45);
var translate = d3.svg.transform().translate(200, 100);

rect.attr('transform', rotate);

var rect2 = rect.attr('transform', rotate);
rect2.attr('transform', translate);

source d'informationauteur geotheory