INNER CODE UNIT · JavaScript

zoomClick

Brbb/graphql-rover · js/zoom.js:35

function zoomClick(source) {
    var direction = 1,
        factor = 0.2,
        target_zoom = 1,
        center = [svg.attr("width") / 2, svg.attr("height") / 2],
        extent = zoom.scaleExtent(),
        translate = zoom.translate(),
        translate0 = [],
        l = [],
        view = {x: translate[0], y: translate[1], k: zoom.scale()};

    direction = (source.id === 'zoom_in') ? 1 : (source.id === 'zoom_out') ? -1 : 0;
    target_zoom = zoom.scale() * (1 + factor * direction);

    if (target_zoom < extent[0] || target_zoom > extent[1]) { return false; }

    translate0 = [(center[0] - view.x) / view.k, (center[1] - view.y) / view.k];
    view.k = target_zoom;

View source record →

📰 Research Paper
Loading…
⏳ Fetching content…