Как найти происхождение SVG, увеличенный с помощью другой точки? - PullRequest
0 голосов
/ 14 октября 2019
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 масштабируется с помощью колеса мыши, но оно не масштабируется в соответствии с указателем мыши, как я могу найти источник после масштабирования перикулярного скана. Обычно это масштабирование в соответствии с указателем курсора относительно экрана

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...