iOS 计算所有标注的经纬度范围 来确定地图显示区域
1.计算所有点的经纬度范围
//向点聚合管理类中添加标注 _imageDataArr是存放经纬度标注数组
for (NSInteger i = 0; i < _imageDataArr.count; i++) {
if (i==0) {
//以第一个坐标点做初始值
_minLat = _imageDataArr[i].latitude;
_maxLat = _imageDataArr[i].latitude;
_minLon = _imageDataArr[i].longitude;
_maxLon = _imageDataArr[i].longitude;
}else{
//对比筛选出最小纬度,最大纬度;最小经度,最大经度
_minLat = MIN(_minLat, _imageDataArr[i].latitude);
_maxLat = MAX(_maxLat, _imageDataArr[i].latitude);
_minLon = MIN(_minLon, _imageDataArr[i].longitude);
_maxLon = MAX(_maxLon, _imageDataArr[i].longitude);
}
//动态的根据坐标数据的区域,来确定地图的显示中心点和缩放级别
if (_imageDataArr.count > 0) {
//计算中心点
CLLocationCoordinate2D centCoor;
centCoor.latitude = (CLLocationDegrees)((_maxLat+_minLat) * 0.5f);
centCoor.longitude = (CLLocationDegrees)((_maxLon+_minLon) * 0.5f);
BMKCoordinateSpan span;
//计算地理位置的跨度
span.latitudeDelta = _maxLat - _minLat;
span.longitudeDelta = _maxLon - _minLon;
//得出数据的坐标区域
_region = BMKCoordinateRegionMake(centCoor, span);
}
2.地图显示标注区域
/**
*地图初始化完毕时会调用此接口
*@param mapview 地图View
*/
- (void)mapViewDidFinishLoading:(BMKMapView *)mapView {
[_mapView setRegion:_region];
}
iOS 计算所有标注的经纬度范围 来确定地图显示区域的更多相关文章
- IOS 计算两个经纬度之间的距离
IOS 计算两个经纬度之间的距离 一 丶 -(double)distanceBetweenOrderBy:(double) lat1 :(double) lat2 :(double) lng1 :(d ...
- 百度地图Api之自定义标注:(获得标注的经纬度和中心经纬度即缩放度)
百度地图Api之自定义标注:(获得标注的经纬度和中心经纬度即缩放度) <%@ Page Language="C#" AutoEventWireup="true&qu ...
- Android Google Maps API 网络服务用于网络定位、计算路线、获取经纬度、获取详细地址等
extends:http://blog.csdn.net/h7870181/article/details/12505883 Google Maps API 网络服务 官网地址 : https://d ...
- iOS 计算文字宽度的一个细节
设计师给到的图,经常是 "按钮的左边距离文字右边5px" 这样子的标注.于是我们需要计算文字的宽度. 有两种方法: 用 label 或 button 的 sizetofit 方法 ...
- IOS计算两点之间的距离
//广州经纬度 CLLocationCoordinate2D guangZhouLocation; guangZhouLocation.latitude = 23.20; guangZhouLocat ...
- 利用SQL计算两个地理坐标(经纬度)之间的地表距离
两个地理坐标(经纬度)地表距离计算公式: 公式解释如下: Long1,Lat1表示A点经纬度,Long2,Lat2表示B点经纬度: a=Lat1–Lat2 为两点纬度之差,b=Long1-Long2为 ...
- js计算地球两个经纬度之间的距离
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...
- ios 计算缓存大小并清理缓存
SDWebImage.WebView产生的缓存 1.计算缓存大小 //SDWebImage缓存大小 UILabel *cleanDetailText = [[UILabel alloc]init]; ...
- iOS计算完整文字高度(适应iOS 10)
动态计算文字的高度:(切记LineSapcing>=2,不然会显示不全) +(CGSize) boundingALLRectWithSize:(NSString*) txt Font:(UIFo ...
随机推荐
- angular中文文档的滚动条样式
个人感觉angular中文文档的滚动条样式非常棒,于是乎就扒了下来 https://www.angular.cn/ body::-webkit-scrollbar { /* 定义了滚动条整体的样式 * ...
- google搜索引擎正确打开姿势
Google搜索引擎 原文来自黑白之道微信公众号 https://mp.weixin.qq.com/s/Ey_ODP_mG00of5DPwcQtfg 这里之所以要介绍google搜索引 ...
- Purge and Seal Test on 09 GMC Yukon with Autel Maxisys Pro MS908P scanner
Autel Maxisys Pro MS908P diagnostic scanner does a purge and seal test on 2009 GMC Yukon hybrid succ ...
- 源码分析之groupcache之consistenthash
很多时候读开源的库就是为自己准备大量的代码库,优秀开源项目代码质量比绝大部分人的代理质量都要高. 依赖的库 ```import ( "hash/crc32" "sort& ...
- webpack 打包问题
Project is running at http://localhost:8080/webpack output is served from /dist/webpack: wait until ...
- yii2.0 邮件发送如何配置
邮件发送配置: 打开配置文件将下面代码添加到 components => [...]中(例:高级版默认配置在/common/config/main-local.php) 'mai ...
- 如何配置nginx屏蔽恶意域名解析指向《包含隐藏nginx版本号》
恶意域名指向: 比如,有一个垃圾域名将解析指向到了你们服务器的IP,一般多一个解析可能不会有什么问题,但是现在全民备案时期,可能你的运营商会联系你,说你们的域名没备案,可能会封你们的80端口,然后会导 ...
- Android学习(二)
学号 20189214 <Android程序设计>第七周学习总结 教材学习内容总结 监听 设置点击监听的5种方式 方法1:直接用匿名内部类 这是最常用的一种方法,直接setXXXListe ...
- shapefile添加字段 设置文件名为字段内容
转眼间,这一年又结束了,再记录一点知识吧 同事说他有好多shapefile,想给每个shapefile添加一字段,并设置该字段的内容为shapefile文件名,想着用arcpy实现,于是有了下面的代码 ...
- java中函数的参数传递
转载 https://www.cnblogs.com/lixiaolun/p/4311863.html 转载https://www.cnblogs.com/wutianqi/p/8723582.ht ...