将Android Google中心放在一个点上,同时放大到足以包含另一个点

weixin_38054042 2019-09-12 11:45:24
我希望有一个类似于雷达屏幕的东西,它以用户所在的位置为中心,同时缩放到足以包含v2 api的目标点.现在我正在使用 bounds = new LatLngBounds.Builder().include(destPos) .include(yourPos).build(); map.animateCamera(CameraUpdateFactory.newLatLngBounds(bounds, 50)); 但是这个中心位于两点之间的某个点上并且缩放以包括两者.有没有像我这样容易做的事情?或者我是否需要或多或少从头开始并进行一些数学运算(例如,计算两点之间的距离,计算LatLngBounds的lat / lng,以便用户位于定义的矩形的中心,矩形的边缘包括目的地 – 考虑地图/屏幕尺寸)? 这就是我所拥有的: 这就是我想要的:
...全文
12 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
weixin_38067113 2019-09-12
  • 打赏
  • 举报
回复
你自己的答案过于复杂. 您需要计算位置另一侧的点,并将其包含在LatLngBounds中. LatLng otherSidePos = new LatLng(2 * yourPos.latitude - destPos.latitude, 2 * yourPos.longitude - destPos.longitude); bounds = new LatLngBounds.Builder().include(destPos) .include(otherSidePos).build(); map.animateCamera(CameraUpdateFactory.newLatLngBounds(bounds, padding)); 注意:您不希望将50像素硬编码为填充.它在不同设备上看起来会有所不同.请改用密度无关的像素.

476

社区成员

发帖
与我相关
我的任务
社区描述
其他技术讨论专区
其他 技术论坛(原bbs)
社区管理员
  • 其他技术讨论专区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧