locked
如何让map控件自动缩放 RRS feed

  • 问题

  • 用map控件做了一个页面

    载入页面时会显示自己所在的位置(用了一个绿色的圆点)

    然后向map空间中添加了一个红色的圆点但遗憾是的这两个点相距太远,不能同时显示,除非手动缩放……

    想请问如何自动缩放,保证两个点同时可见???

    2014年8月20日 8:52

答案

  • 你好。

    说一下这个问题的思路:

    1. 确定地图的中心,是绿色点,红色点,还是两个点的中间位置。

    2. 找到当前ZoomLevel下,地图的Bounds对应矩形的数据,也就是地图可视范围的经纬度范围。

    3. 判断当前红点和绿点的经纬度是否在Bounds的范围内,如果都在,则结束。

    4. 如果不在范围内,则减小ZoomLevel,至于ZoomLevel具体减到多少,这样粗略的计算:地图ZoomLevel每减少1,可视范围大致为之前的4倍,也就是经度纬度都为2倍。这样就很容易算出,ZoomLevel减到几时,两个点会在课时范围内,然后把ZoomLevel设置为对应数字就可以了。


    希望我的答案能帮助更多的人。

    • 已标记为答案 孟云帆 2014年8月20日 10:01
    2014年8月20日 9:42