index : pan-zoom | |
SVG pan/zoom library. |
aboutsummaryrefslogtreecommitdiff |
diff options
author | Catalin Mititiuc <webdevcat@proton.me> | 2025-03-19 19:27:56 -0700 |
---|---|---|
committer | Catalin Mititiuc <webdevcat@proton.me> | 2025-03-19 19:27:56 -0700 |
commit | 06e5c4e09ea8373e153e8fa8b3ea97203f7c61f9 (patch) | |
tree | c50fe66f2ad3e7ff1b0dfe5bb1f069ef1ac76ba8 /src/modules | |
parent | 2919627c1e8fefb1c9bbd4034419b4fd2b117b9e (diff) |
Add programmaticZoom
Diffstat (limited to 'src/modules')
-rw-r--r-- | src/modules/zoom.js | 15 |
1 files changed, 12 insertions, 3 deletions
diff --git a/src/modules/zoom.js b/src/modules/zoom.js index 15e622e..3ccb918 100644 --- a/src/modules/zoom.js +++ b/src/modules/zoom.js @@ -24,15 +24,24 @@ function setTransform(el, computedMtx, translateMtx, scale) { const transformMtx = computedMtx.multiply(translateMtx).scale(scale).multiply(translateMtx.inverse()); - groups.forEach(([z, p]) => track(z, p, transformMtx)); + //groups.forEach(([z, p]) => track(z, p, transformMtx)); el.style.transform = transformMtx; } -let groups = []; +//let groups = []; + +export function programmaticZoom(el, point, scale, cb) { + const computedMtx = getComputedTransformMatrix(el); + const translateMtx = getTranslateMatrix(el, point.x, point.y); + + setTransform(el, computedMtx, translateMtx, scale); + + cb(); +} export default function (el, factor = 0.1, cb) { - groups = getTracked(document.querySelectorAll('svg g[class] use')); + //groups = getTracked(document.querySelectorAll('svg g[class] use')); return e => { e.preventDefault(); |