iOS高德地图让指定区域或者点显示在屏幕中间

对于高德地图也是一个新手,很多功能看文档,问技术 或者高德群里讨论  群号:204668425

在我们需求中绘制的有 圆 折线 不规则图形 方式,打开地图指定的绘制图形置于屏幕中间

1、首先创建一个数组--  arraySpace

圆: 需要根据圆的半径 中心点计算 垂直的四个

//加入所有圆的点
//设置位置的点
                CLLocationCoordinate2D destinationCoordinated =CLLocationCoordinate2DMake(latitude,longitude);

                MAPointAnnotation * a1= [[MAPointAnnotation alloc] init];
                a1.coordinate =destinationCoordinated;

                // 111000 这个是米转换经纬度的最大尺度,所以算出来的点只会在圆之外
                double jingwei = (double) areaRadius/111000;
              //计入一个中心点
                [arraySpace addObject:a1];

               //由原点计算上下左右的四个点
                for (int i=0; i<4; i++) {
                    MAPointAnnotation * a1= [[MAPointAnnotation alloc] init];
                    switch (i) {
                        case 0:
                            NSLog(@"%lf----%lf",latitude+jingwei,longitude+jingwei);
                            a1.coordinate = CLLocationCoordinate2DMake(latitude+jingwei,longitude);

                            break;

                        case 1:
                            a1.coordinate = CLLocationCoordinate2DMake(latitude-jingwei,longitude);
                            break;

                        case 2:
                            a1.coordinate = CLLocationCoordinate2DMake(latitude,longitude+jingwei);
                            break;

                        case 3:
                            a1.coordinate = CLLocationCoordinate2DMake(latitude,longitude-jingwei);
                            break;

                        default:
                            break;
                    }

                    //加入数组
                    [arraySpace addObject:a1];
                }

计算四个点

2、折线、多边形 加入所有的点---》arraySpace

3、用下边的方法 控制显示在屏幕中的大小

以点的方式 添加

p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; font: 12.0px Menlo; color: #78492a; background-color: #ffffff }
span.s1 { color: #000000 }
span.s2 { color: #ba2da2 }
span.s3 { color: #4f8187 }
span.s4 { color: #31595d }
span.s5 { color: #3e1e81 }
span.s6 { color: #272ad8 }

[self.mapView showAnnotations:self.arraySpace edgePadding:UIEdgeInsetsMake(200, 200, 350, 200) animated:YES];

以绘制 图的方式添加

p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; font: 12.0px Menlo; color: #000000; background-color: #ffffff }
span.s1 { color: #ba2da2 }

self.mapView showOverlays:<#(NSArray *)#> edgePadding:<#(UIEdgeInsets)#> animated:<#(BOOL)#>

p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; font: 12.0px Menlo; color: #4f8187; background-color: #ffffff }

原文地址:https://www.cnblogs.com/xujiahui/p/9538265.html

时间: 2024-07-29 11:39:09

iOS高德地图让指定区域或者点显示在屏幕中间的相关文章

iOS 高德地图API不能定位及INVALID_USER_SCODE

iOS 高德地图API不能定位及INVALID_USER_SCODE问题,有需要的朋友可以参考下. 一.在使用高德地图的API的时候,没有办法实现定位,在这里说一下在真机测试的时候出现没法定位应该注意的几点问题和解决方法. 1.将mapView添加到self.view上,[self.view addSubView:self.mapView]; 2.在plist文件中添加一个属性NSLocationAlwaysUsageDescription. 3.设置mapView的一个属性,self.mapV

使用高德地图绘制多边形区域

最近遇到一个需求,在网页上面编辑多边形的区域,并且需要能够判断一个点是否在这个多边形区域里面. 看了一下高德地图的jsapi,简单的做了一个demo. 1.你需要一个高德地图的账号,注册地址点击这里 2.登陆进去创建一个应用,这个时候就会给你一个对应的Key 3.查看高德地图的的demo,进入示例中心 4.学习一下左侧分类里面的 点标记 的示例,点标记里有涉及到高德地图事件,以及基础的类. 5.看完上面的,接下来我们接着学习折线,多边形,圆,这里我们就可以接触到AMap.Polygon这个类,以

iOS高德地图使用-搜索,路径规划

项目中想加入地图功能,使用高德地图第三方,想要实现确定一个位置,搜索路线并且显示的方法.耗了一番功夫,总算实现了. 效果 WeChat_1462507820.jpeg 一.配置工作 1.申请key 访问 http://lbs.amap.com/dev/key/ 在高度地图第三方开发平台申请一个key,注册账户,新建应用,这个没什么门槛.得到这个key 屏幕快照 2016-05-06 上午10.34.15.png 提示一下,这个key对应的bundle ID 要和工程里面的bundle ID 相同

IOS高德地图开发

博客链接:www.goofyy.com/blog 或者百度搜索 goofyy 玩了苹果原生地图,觉得IOS8的原生还是差了那么一点点,对比了一下腾讯的SDK和高德的SDK,还是觉得高德更碉些,第三方地图就先拿高德地图开刀了. 使用高德SDK,首先到高德官网注册一个开发者账号,获取开发者KEY.这些高德LBS开放平台都是有详细教程.小编编就不在这里赘余啦.首先是导入库和开发前简单设置. 高德官网下载高德开发的SDK导入.具体导入的库如下 1.引入地图库&搜索库 左侧目录中选中工程名,在 TARGE

iOS 高德地图API不能定位及INVALID_USER_SCODE问题

一.在使用高德地图的API的时候,没有办法实现定位,在这里说一下在真机测试的时候出现没法定位应该注意的几点问题和解决方法. 1.将mapView添加到self.view上,[self.view addSubView:self.mapView]; 2.在plist文件中添加一个属性NSLocationAlwaysUsageDescription. 3.设置mapView的一个属性,self.mapView.showUserLocation = YES,这个属性一定要设置为YES. 4.设置mapV

Ios 高德地图 地图上添加多个大头针 怎么在复用队列中知道我单击的是哪一个大头针

//创建大头针对象     MAPointAnnotation *pointAnnotation = [[MAPointAnnotation alloc] init];     //插入大头针的位置     pointAnnotation.coordinate = CLLocationCoordinate2DMake(39.989631, 116.481018);     //大头针的标题     pointAnnotation.title = @"方恒国际";     //大头针的子

iOS高德地图自定义annotation添加不同图片

// 根据anntation生成对应的View - (MAAnnotationView *)mapView:(MAMapView *)mapView viewForAnnotation:(id<MAAnnotation>)annotation { static  int a= 0; if ([annotation isKindOfClass:[POIAnnotation class]]) { a++; static NSString *customReuseIndetifier = @&quo

OpenLayers学习--加载指定等级指定范围的高德地图数据

在使用高德地图数据的时候,我们通常不需要加载世界地图,只需要指定项目片区地图数据即可:同样,我们也不需要所有等级的数据,只需要指定等级数据即可. 按照<OpenLayers学习--Layer体系(一)>中的方法,直接使用XYZ图层类来加载,显然无法实现该功能.主要原因有以下两点: 1.没有指定地图的分辨率 OpenLayers的机制就是,当你没有给Layer指定分辨率,也没有给Map指定分辨率,则直接将地图的最大范围的左上角点作为切图原点,并且按照18级来计算切图分辨率,分辨率是以1/2向下递

如何实现在H5里调起高德地图APP?(上)

这一篇文章,将讲述如何在H5里调起高德地图APP,并展示兴趣点.适合于展示某个餐馆,商场等,让用户自行选择前往方式. 场景一.在高德地图上展示Marker点或者POI标记 在一些基于位置分享的应用开发中,我们会在地图上标记marker点或者使用地图上的poi点,这时候如果能在高德地图客户端展示这个位置的话,用户就可以使用导航或者路线规划等功能前往指定地点,起到引导用户前往的作用,因此JSAPI提供的调起高德地图并显示点标记或者poi点的功能,以满足此类需求. 点标记位置展示 通常我们都使用Mar