D3js: ¿Cómo borro la escala de zoom establecida por el evento d3.zoom?

Estoy utilizando el d3.behavior para adjuntar un evento de zoom a mi SVG, por lo que luego se usa la rueda del ratón. Puedo obtener un evento de zoom con traslación y escala que luego utilizo para configurar el atributo de transformación del elemento.

Parece que el valor de zoom.scale es persistente en algún lugar, por lo que cada vez que se usa la rueda del ratón siempre contiene el valor de zoom correcto, teniendo en cuenta todos los eventos de zoom anteriores. Esto es genial, pero necesito una manera de borrar ese valor, digamos un botón de reinicio del zoom. Cuando el usuario hizo clic en el botón, la próxima vez que se desplace para ampliar el elemento volverá a escalar su tamaño original.

Entonces, ¿dónde almacena D3 este valor y cómo lo reinicio?

ACTUALIZAR:
Esta pregunta también tiene otro aspecto: si configuro mediante programación el atributo "transformar" para realizar una transformación de escala, el evento de zoom no los tendrá en cuenta. Entonces, si luego uso la rueda del ratón para hacer zoom, soy un tornillo porque puedo destruir la transformación original. Por lo tanto, necesito una forma de configurar, no solo restablecer programáticamente, el valor "traducir" y "escalar" del evento de zoom, donde sea que esté almacenado.

Respuestas a la pregunta(1)

Su respuesta a la pregunta