D3 manuell zoomen, wie man die Übersetzung für den Zoom einstellt

Ich muss einen manuellen Übergang durchführen, da ich über d3-Zoom Bescheid weiß, dass der Zoom meinen manuellen Zoom nicht hört. Wenn ich nach dem manuellen Zoomen mit der Maus ziehe oder mit dem Mausrad scrolle, startet der d3-Zoom das Ereignis ab dem vorherige Position (translate) und Skalierungswert, die der d3-Zoom gespeichert hat, ist für meine Karte so furchtbar. Daher muss ich nach dem manuellen Zoomen die Zoom-Übersetzung und den Zoom-Maßstab festlegen. Ich kann den Zoom-Maßstab festlegen, kenne aber den Wert für die Zoom-Übersetzung nicht.

       g.transition()
        .duration(1000)
        .attr("transform", "translate(" + (window_width / 2 + translateX) + "," + (window_height / 2 ) + ")scale(" + zoomLevel + ")translate(" + (-x + 10) + "," + -y + ")")
        .each("end", function () {
            if (zoomLevel > 1) {
                $("#zoom_control").show();
                showCenteredTextInCircle();
                // zoom.scale(zoomLevel);
                // zoom.translate([x*zoomLevel, y*zoomLevel]);
            }
        });

Dieser Code bezieht sich auf d3-zoom-example

Weiß jemand den richtigen Zoom Zoom im Glossar erklärt Wert nach meinem Umstieg manuell übersetzen? Danke !!!

Antworten auf die Frage(1)

Ihre Antwort auf die Frage