怎样在高德地图找某一个区域的详细地图
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了怎样在高德地图找某一个区域的详细地图相关的知识,希望对你有一定的参考价值。
参考技术A 那就在那个区域内随便输入一个地名,然后不断放大就有了。但是实际地址跟导航地图上有时候有差异,这个事我经常碰到。所以导航都不建议你把它当做唯一的建议。有时候一个立交桥,需要绕道走,导航可能就没有这更新的信息。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、用下边的方法 控制显示在屏幕中的大小
以点的方式 添加
[self.mapView showAnnotations:self.arraySpace edgePadding:UIEdgeInsetsMake(200, 200, 350, 200) animated:YES];
以绘制 图的方式添加
self.mapView showOverlays:<#(NSArray *)#> edgePadding:<#(UIEdgeInsets)#> animated:<#(BOOL)#>
以上是关于怎样在高德地图找某一个区域的详细地图的主要内容,如果未能解决你的问题,请参考以下文章