地图中气泡避让的思路
2013-08-25 11:09
176 查看
需求
在地图上指定的位置点处扎个气泡,顶点个数最多三个。 保证气泡互不相交。实现思路
产品给的需求,需要具体成一系列规则:图1, 2D下每个位置点的物体坐标系下可以分为四个象限0、1、2、3,每个位置点气泡定义了四个样式: LEFT_TOP = 0,RIGHT_TOP = 1,LEFT_BOTTOM = 2,RIGHT_BOTTOM = 3。
图2,0象限的气泡箭头在右下角,1象限的气泡箭头在左下角,2象限的气泡箭头在右上角,3象限的气泡箭头在左上角。
平面上三个点,通过控制每个点的气泡样式,一定可以实现气泡互不遮挡。四个顶点就不一定了,图4中,0、1、2 点摆放了气泡以后,中间3th点怎么摆放都会跟其他点的气泡相交。这也与一个事实相符: 其他家地图(谷歌,苹果,百度,高德)中 多路线方案中结果都不超过三个。
气泡避让思路
图5,平面上三个点,通过求取包围盒思路,找到最左边的点AA,最右边的点BB,最后剩余一个顶点CC。
AA气泡样式设为 LEFT_TOP,BB样式设为RIGHT_TOP,CC样式设为LEFT_BOTTOM或者RIGHT_BOTTOM即可。
相关文章推荐
- 类似雷电这种小游戏背景无限地图的一种思路
- 关于“搭桥”游戏生成随机地图的设计思路
- 基于jQuery.validate及Bootstrap的tooltip开发气泡样式的表单校验组件思路详解
- 极索(Gsuo)推出新版地图采用Gmap设计思路
- 地图气泡图片合成
- iOS Swift3.0地图自定义标注和气泡
- 【iOS】Mapkit的使用:地图显示、定位、大头针、气泡等
- 高德地图点击气泡跳转到其它地图
- android 仿微信聊天气泡效果实现思路
- SOSO地图API使用(一)在地图上画圆实现思路与代码
- 关于google map的--气泡地图
- 获取百度地图中心点以及滑动地图后中心点的PoiList详情(类似于U步打车首页,关键看思路)
- 单一世界十万在线webgame的设计思路(三)--地图模块设计思路
- iOS 画地图上的标注气泡
- 利用Gdal的Postgis数据地图导出思路
- android地图获取当前位置,气泡标志,点击气泡跳转到另一个界面
- android百度定位后显示在地图上点击弹出气泡
- 使用Flash地图控件AnyMap在地图中添加气泡图形
- 在一张静态地图图片上添加标记,求思路
- 【iOS】Mapkit的使用:地图显示、定位、大头针、气泡等