You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Заменить компонент PinchScrollZoom на свою реализацию #15
Сейчас для масштабирования и перетаскивания карты используется сторонний компонент PinchScrollZoom. Он добавляет зависимость и ограничивает управление поведением (зум, позиционирование, двойной тап и т.д.). Нужно заменить его на собственное решение — рендерить SVG напрямую через и использовать @vueuse/gesture + @vueuse/motion для обработки жестов и плавных анимаций.
Что нужно сделать:
Изучить:
как работает useDrag, usePinch, useWheel из @vueuse/gesture;
как применять useMotionProperties и useSpring из @vueuse/motion для плавных трансформаций (x, y, scale).
Удалить компонент PinchScrollZoom из шаблона.
Вместо этого:
обернуть SVG в обычный контейнер <div class="zoom-container">;
добавить обработку жестов для wheel, drag и pinch событий.
Реализовать функционал:
масштабирование колесиком и pinch-жестом с ограничениями (1×–3×);
перемещение изображения при удержании (drag);
двойной тап — сброс положения и масштаба в начальное состояние.
Добавить плавность:
использовать useSpring для сглаживания изменения позиции и масштаба;
Activity