【问题标题】:how restrict zoom-out level Google maps?如何限制缩小级别的谷歌地图?
【发布时间】:2013-11-24 06:01:41
【问题描述】:

我们尝试在我的应用程序中限制世界地图的缩小级别,并且我的应用程序基于 Ruby on rails 3 构建。

我们为 Google 地图使用了“gmap4rails”gem,但问题是世界地图会在地图区域重复多次,如您在附图中看到的那样。

我们需要 3 个部分,这将有利于用户进行可视化,但如果它的 3,4 部分也是可以预期的,但它会重复 5 次。请帮助我们限制缩小。

【问题讨论】:

    标签: ruby-on-rails-3 google-maps google-maps-api-3 google-maps-markers gmaps4rails


    【解决方案1】:

    您尝试过zoom_changed 事件吗? 正如您可能猜到的那样,这个事件会随着缩放变化而被触发。 所以,我们的想法是检测你的用户是哪个缩放级别,例如,如果缩放小于 3,则强制缩放保持在 3 级。类似:

    google.maps.event.addListener(map, 'zoom_changed', function() {
        var zoomLevel = map.getZoom();
        if(zoomLevel < 3)
            map.setZoom(3);
    });
    

    当然,您必须根据自己的情况进行调整。但我认为这可能是一个好的开始。随时询问您是否需要更高的精度。

    你也可以看看this question on SO ,OP的问题和你的不太一样,但是一些答案可以帮助你。

    【讨论】:

    • @jayesh 不客气。不要忘记将您的答案标记为已解决。
    • @jayesh 只需点击答案左侧向下箭头下方的 符号即可。
    【解决方案2】:

    在 gmap4rails 中,我们使用 minZoom 和 maxZoom 选项,它对我们有用 在我们使用的代码下方,谢谢

    = gmaps({"map_options" => {"auto_zoom" => false,"minZoom" => 2, "maxZoom" => 15,"zoom" => 2}, "markers" => {"data" => @latest_projects_json }})
    

    【讨论】:

      最近更新 更多