美文网首页
地图-半径

地图-半径

作者: coder1003 | 来源:发表于2019-11-22 15:07 被阅读0次
#pragma mark -添加
- (void)addStopAnnotation
{
    CGFloat space = 0.01;
    if (self.stopPointMarray.count >= 2 && self.planMArray.count > 2) {
        if (fabs([[[self.stopPointMarray firstObject] firstObject] doubleValue] - [[[self.planMArray firstObject] firstObject] doubleValue]) < space &&
            fabs([[self.stopPointMarray firstObject][1] doubleValue] - [[self.planMArray firstObject][1] doubleValue]) < space) {
            [self.stopPointMarray removeObjectAtIndex:0];
        }
        if (fabs([[[self.stopPointMarray lastObject] firstObject] doubleValue] - [[[self.planMArray lastObject] firstObject] doubleValue]) < space &&
            fabs([[self.stopPointMarray lastObject][1] doubleValue] - [[self.planMArray lastObject][1] doubleValue]) < space) {
            [self.stopPointMarray removeObjectAtIndex:self.stopPointMarray.count - 1];
        }
    }
    for (NSInteger i = 0; i < self.stopPointMarray.count; i++) {
        NSArray *array = self.stopPointMarray[i];
        SFPointAnnotation *arrivelPoint = [[SFPointAnnotation alloc] init];
        arrivelPoint.coordinate = CLLocationCoordinate2DMake([array[1] doubleValue], [array[0] doubleValue]);
        arrivelPoint.annotationType = StopPointType;
        [self.mapView addAnnotation:arrivelPoint];
        //1120
        //构造圆
        MACircle *circle = [MACircle circleWithCenterCoordinate:CLLocationCoordinate2DMake([array[1] doubleValue], [array[0] doubleValue]) radius:250]; //[array[0] floatValue]
        //在地图上添加圆
        [_mapView addOverlay: circle];
    }
}

#pragma mark - MAMapViewDelegate
- (MAOverlayRenderer *)mapView:(MAMapView *)mapView rendererForOverlay:(id <MAOverlay>)overlay
{
    if([overlay isKindOfClass:[MAPolyline class]]){
        NSInteger index = [self.lines indexOfObject:overlay];
        
        if(index == 0) {
            MAPolylineRenderer *polylineRenderer = [[MAPolylineRenderer alloc] initWithPolyline:(MAPolyline *)overlay];
            polylineRenderer.lineWidth = 10.f;
            // 利用图片或者这个做一些区别
            NSBundle *bundle = [NSBundle bundleWithPath:[[[NSBundle mainBundle] resourcePath] stringByAppendingPathComponent:@"AMap.bundle/images"]];
            UIImage *image = [UIImage imageNamed:@"traffic_texture_gray" inBundle:bundle compatibleWithTraitCollection:nil];
            polylineRenderer.strokeImage = image;
            return polylineRenderer;
        }else{
            MAPolylineRenderer *polylineRenderer = [[MAPolylineRenderer alloc] initWithPolyline:(MAPolyline *)overlay];
            polylineRenderer.lineWidth = 10.f;
            // 利用图片或者这个做一些区别
            NSBundle *bundle = [NSBundle bundleWithPath:[[[NSBundle mainBundle] resourcePath] stringByAppendingPathComponent:@"AMap.bundle/images"]];
            UIImage *image = [UIImage imageNamed:@"traffic_texture_blue" inBundle:bundle compatibleWithTraitCollection:nil];
            polylineRenderer.strokeImage = image;
            return polylineRenderer;
        }
    }
    //1120
    if ([overlay isKindOfClass:[MACircle class]])
    {
        MACircleRenderer *circleRenderer = [[MACircleRenderer alloc] initWithCircle:(MACircle *)overlay];
        circleRenderer.lineWidth   = 2.f;
        circleRenderer.strokeColor = [UIColor colorWithRed:70.0/255.0 green:131.0/255.0 blue:245.0/255.0 alpha:0.8];
        circleRenderer.fillColor   = [UIColor colorWithRed:70.0/255.0 green:131.0/255.0 blue:245.0/255.0 alpha:0.2];
        return circleRenderer;
    }
    return nil;
}

相关文章

  • 地图-半径

  • 高地知识点归纳(一)

    第一章 地球与地图 一、地球形状与大小 1、两极稍扁,赤道略鼓;半径6371km,赤道半径6378km,极半径63...

  • 坐标转换

    1、将米转换成坐标度数 2、根据坐标点和半径将地图缩放到合适等级

  • # 如何圈出某点周边半径2公里的圆(用百度地图)?

    标签(空格分隔): 技术 解决方案 地图 如何圈出某点周边半径2公里的圆(用百度地图)?解决的问题第一步,打开百度...

  • 认知半径、能力半径、行动半径

    前段时间,公众号 《孤独大脑》 的作者老喻受罗胖邀请,在得到APP上开了《老喻的人生算法》课。鉴于我目前购买的课程...

  • 认知半径、能力半径、行动半径

    前段时间,公众号 孤独大脑 的作者老喻受罗胖邀请,在得到APP上开了《老喻的人生算法》课。我没有去买这个课程,因为...

  • 百度地图 画圆半径改变触发事件

    在业务处理中出现一个需求,要求在百度地图中画圆。并且在改变圆的半径后需要触发相关的事件!研究了一下百度地图js的A...

  • 话说“半径算法”

    “半径算法”:扩大认知半径,明确能力半径,减小行动半径。 第一,认知半径要尽可能地宽。 这个很容易理解,否则就会视...

  • 在限定的范围内,画区域,地址是可以搜索

    高德地图自带的,根据用户输入的地址,进行模糊搜索,用户进行选择定位,根据用户输入的半径进行范围限定用vue以及el...

  • 初上南风面

    1 这些年,登山、漂流,感觉越来好。随着装备的提升,活动半径也大起来了,有空研究地图,经常会有到现场看看的冲动。 ...

网友评论

      本文标题:地图-半径

      本文链接:https://www.haomeiwen.com/subject/gpjtqqtx.html