亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于iOS使用百度地圖繪制軌跡的應(yīng)用分析

        2020-11-30 08:54:09曹琴
        中文信息 2020年10期

        曹琴

        摘?要:在進(jìn)行iOS開發(fā)時(shí)經(jīng)常會碰到需要使用地圖的問題,其中使用頻率較高的是百度地圖。本文就如何用百度地圖實(shí)現(xiàn)繪制軌跡的問題進(jìn)行了探討。

        關(guān)鍵詞:iOS?Objective-C?百度地圖?繪制軌跡

        中圖分類號:G202?文獻(xiàn)標(biāo)識碼:A?文章編號:1003-9082(2020)10-000-01

        iOS項(xiàng)目需要使用百度地圖實(shí)現(xiàn)員工巡查功能,展示地圖,并顯示員工當(dāng)前所在位置。當(dāng)該員工點(diǎn)擊“開始巡查”按鈕,則追隨其腳步,進(jìn)行軌跡繪制,直到員工點(diǎn)擊“結(jié)束巡查”按鈕,完成軌跡的繪制,并截圖上傳至后臺。

        路線繪制完畢的時(shí)候,不能截取到完整的“起點(diǎn)”+“終點(diǎn)”圖片,即使在截圖之前將地圖的centerCoordinate設(shè)置成中點(diǎn),然后設(shè)置2s延時(shí)后再截圖,也還是只能截取到以終點(diǎn)為中點(diǎn)的圖片。并不是設(shè)置center無效,而是地圖會閃一下中點(diǎn)的位置,然后還是回歸到終點(diǎn)的位置,最后才截圖。但是,當(dāng)?shù)貓D加載后,人為地拉動一下地圖,那么在截圖的時(shí)候,可以設(shè)置終點(diǎn)成功,并截取到完整的圖片。

        解決辦法,如此設(shè)置:_mapView.showsUserLocation = NO。 這樣的話,就需要自己實(shí)現(xiàn)定位圖片的一些功能,譬如箭頭圖標(biāo);設(shè)備運(yùn)動方向變化的時(shí)候,箭頭要跟著指向前進(jìn)的方向;還有就是隨著定位的變化而變化位置。

        以下是關(guān)鍵代碼:

        #pragma mark - update location

        -(void)BMKLocationManager:(BMKLocationManager *)manager didUpdateLocation:(BMKLocation *)location orError:(NSError *)error{?if(self.isStartTrace) {?//構(gòu)建分段顏色索引數(shù)組

        BMKPolyline *polyline = [BMKPolyline polylineWithCoordinates:coords count:2]; [self.mapView addOverlay:polyline];?[self.points addObject:location];?self.firstLocation = [self.userLocation copy];}}

        #pragma mark - 繪制軌跡點(diǎn)

        -(void)drawTrackWithPoints:(NSArray *)points{?CLLocationCoordinate2D coors[points.count];?NSInteger cnt = 0;?for (size_t i = 0; i < points.count; i++) { CLLocationCoordinate2D p = CLLocationCoordinate2DMake(((BMKLocation *)points[i]).location.coordinate.latitude, ((BMKLocation *)points[i]).location.coordinate.longitude);?coors[i] = p;?cnt++; }

        BMKPolyline *line = [BMKPolyline polylineWithCoordinates:coors count:cnt];

        BMKPointAnnotation *startAnnotation = [[BMKPointAnnotation alloc] init]; //起點(diǎn)annotation

        BMKPointAnnotation *endAnnotation = [[BMKPointAnnotation alloc] init]; //終點(diǎn)annotation

        dispatch_async(MAIN_QUEUE, ^{ [self.mapView addOverlay:line];?[self.mapView addAnnotation:startAnnotation]; [self.mapView addAnnotation:endAnnotation]; });}

        #pragma mark - 設(shè)置起點(diǎn)、終點(diǎn)和當(dāng)前點(diǎn)樣式

        -(BMKAnnotationView *)mapView:(BMKMapView *)mapView viewForAnnotation:(id)annotation{

        if ([annotation.title isEqualToString:kStartPositionTitle]) {

        view = [mapView dequeueReusableAnnotationViewWithIdentifier: @"startAnnotationID"];

        if (view == nil) { view = [[BMKAnnotationView alloc] initWithAnnotation:annotation reuseIdentifier:startViewID]; UILabel *lbl = [self createLabel:@"始"]; ?[view addSubview:lbl];}

        }else if([annotation.title isEqualToString:kEndPositionTitle]){ UILabel *lbl = [self createLabel:@"終"];}else if([annotation.title isEqualToString:kArrowTitle]){ imageView.image = [UIImage imageNamed:@"sportArrow.png"]; return view;}

        -(UILabel *)createLabel:(NSString *)text{

        //label的frame x, y需要設(shè)置成-15,不然“始”會有一截沒有連線的空格

        UILabel *lblStart = [[UILabel alloc] initWithFrame:CGRectMake(-15, -15, 30, 30)]; }

        -(void)mapViewFitForCoordinates:(NSArray *)points{

        CLLocationCoordinate2D center = CLLocationCoordinate2DMake((minLat+maxLat)*0.5, (minLon+maxLon)*0.5); span.latitudeDelta = 1.2 * ((maxLat-minLat)+0.01); ?span.longitudeDelta = 1.2 * ((maxLon - minLon)+0.01); }

        結(jié)語

        移動端使用地圖來定位、獲取軌跡等功能已經(jīng)成為人們生活中必不可少的一部分,極大地方便了人們進(jìn)行地理定位、導(dǎo)航等。就本文而言,有助于初次開發(fā)者在自己的iOS端APP中嵌入百度地圖,掌握它的繪制簡單軌跡的基本用法,從而為開發(fā)出與地圖相關(guān)的應(yīng)用打下基礎(chǔ)。

        參考文獻(xiàn)

        [1]劉春林,張翠翠.基于iOS的地圖類APP的開發(fā)應(yīng)用研究——以百度地圖為例[J].無線互聯(lián)科技,2018,15(23):46-47.

        [2]林志偉,楊昱昺.基于Android系統(tǒng)的電子地圖運(yùn)動軌跡繪制的研究與實(shí)現(xiàn)[J].科技創(chuàng)新與應(yīng)用,2014(17):20-21.

        久久精品亚洲94久久精品| 国产精品乱一区二区三区| 午夜无码亚| 国产午夜精品视频观看| 亚洲熟女综合色一区二区三区| 无码任你躁久久久久久| 日本视频一区二区三区免费观看 | 日韩高清av一区二区| 中文字幕av长濑麻美| 天堂а√在线最新版中文在线| 国产亚洲日韩欧美久久一区二区| 亚洲精品高清av在线播放| 日本免费观看视频一区二区| 人妻 日韩 欧美 综合 制服| 亚洲成aⅴ人在线观看| 亚洲伊人久久综合精品| 久久久精品亚洲一区二区国产av| 无码国产福利av私拍| 久久噜噜噜| 视频一区二区免费在线观看| 精品久久久久久亚洲综合网| 大香伊蕉国产av| 久久亚洲国产精品123区| 特级国产一区二区三区| 国产美女做爰免费视频| 无码aⅴ在线观看| 谁有在线观看av中文| 风韵犹存丰满熟妇大屁股啪啪| 欧美黑人性暴力猛交喷水| 91久久久久无码精品露脸| 丰满熟女人妻一区二区三区| 午夜爽爽爽男女免费观看影院| 亚洲最大av资源站无码av网址| 久久aⅴ无码av高潮AV喷| 亚洲成人av在线蜜桃| 暖暖视频在线观看免费| 欧美精品aaa久久久影院| 男女视频一区二区三区在线观看| 中文字幕日本人妻久久久免费| 久久国产自偷自免费一区100| av男人的天堂手机免费网站 |