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 ...
随机推荐
- python验证码识别接口及识别思路代码
1,验证码识别接口代码 import json import base64 import requests def shibie(): data = {} path = "./img/&qu ...
- HTTPClient to use http/https protocol to send request
使用了spring boot, gradle, commons-httpcomponent3. 目前httpclient 已经有了版本4. https://github.com/lvfe/httpCl ...
- Android Studio 的 build 过程
如图, 编译器将源代码(包括 Application Module 及其所依赖的所有 Library 源代码)转换成 DEX(Dalvik Executable)文件(其中包括运行在 Android ...
- Struts2源码解析2
看了前面一节对Struts2各个模块运行有了大概了解,也对调用的函数有了一定的了解,本节希望打断点跑一个Struts2例子! 还是放在struts2结构图: 一:项目启动后解析web.xml文件,会解 ...
- Redis:MySQL算老几?
原创: 码农翻身刘欣 前言:上一篇<MySQL:缓存算什么东西?>里挖了一个坑,也有很多人说没看过瘾,今天接着写,把坑填上,不过得把视角换一下,让Redis上台发言. 我知道MySQL看我 ...
- Tableau可视化绘图教程
https://www.w3cschool.cn/tableau/tableau_environment_setup.html
- BP算法的矩阵推导
目录 1. 需要的微积分知识 1.1 导数 1.2 求导的链式法则 2. 梯度下降法 2.1 梯度 2.2 梯度算法的解释 3.误差反向传播算法 3.1 理论推导 3.1.1 符号说明 3.1.2 推 ...
- 在MyEclipse中使用spring-boot+mybatis+freemarker实现基本的增删改查
一.基本环境 二.创建实体类 1.User.java package bjredcross.rainbowplans.model; import bjredcross.rainbowplans.com ...
- SQL 2008发布与订阅
网的教程很多,大都是不能成功,只有这一篇是成功的! https://www.cnblogs.com/DBArtist/p/5803271.html
- python_appium_模拟器启动app进行登录
#coding=utf-8from appium import webdriverimport timedesired_caps = {} #列表desired_caps['platformName' ...