mouseWheel(event: WheelEvent) {
const max_scale = 4;
const con = this.svgElement.children[0];
const wheel = event.deltaY < 0 ? 1 : -1;
if ( (event.deltaY < 0 ? this.zoom + Math.exp(wheel * this.zoomIntensity) : this.zoom - Math.exp(wheel * this.zoomIntensity)) > 0) {
this.zoom = event.deltaY < 0 ? this.zoom + Math.exp(wheel * this.zoomIntensity) : this.zoom - Math.exp(wheel * this.zoomIntensity);
this.originx = this.currentPosition.x ;
this.originy = this.currentPosition.y ;
con.setAttribute('transform', `translate(${this.originx}, ${this.originy})
scale(${this.zoom}, ${this.zoom})
translate(${-this.originx}, ${-this.originy})`);
this.scale += wheel * this.zoomIntensity * this.scale;
this.scale = Math.max(1, Math.min(max_scale, this.scale));
this.visibleWidth = this.width / this.scale;
this.visibleHeight = this.height / this.scale;
}
}
здесь svg масштабируется с помощью колеса мыши, но оно не масштабируется в соответствии с указателем мыши, как я могу найти источник после масштабирования перикулярного скана. Обычно это масштабирование в соответствии с указателем курсора относительно экрана