您的位置:首页 > 移动开发 > IOS开发

GoogleMap API for iOS 使用 之 动点画线

2013-04-19 13:45 519 查看
所谓的动点画线,就是根据用户的当前位置,获取到的经纬度,画出移动轨迹。

画线方法如:

-(void) loadRoute
{

GMSPolylineOptions *options = [GMSPolylineOptionsoptions];

GMSMutablePath *path = [GMSMutablePathpath];



//_locations 是从定位获取的坐标数组
for(int idx =0; idx <_locations.count;
idx++)
{
NSString* currentPointString = [_locationsobjectAtIndex:idx];

NSArray* latLonArr = [currentPointStringcomponentsSeparatedByCharactersInSet:[NSCharacterSetcharacterSetWithCharactersInString:@","]];


CLLocationDegrees latitude = [[latLonArrobjectAtIndex:0]doubleValue];
CLLocationDegrees longitude = [[latLonArrobjectAtIndex:1]doubleValue];



// create our coordinate and add it to the correct spot in the array
CLLocationCoordinate2D coordinate =CLLocationCoordinate2DMake(latitude, longitude);
[pathaddCoordinate:coordinate];


}
options.path = path;
options.color = [UIColorgreenColor];
options.width =10.0f;
options.geodesic =YES;

[_mapViewaddPolylineWithOptions:options];
}
//通过locationManager管理 使用次代理方法

#pragma mark - 位置管理 delegate methond

- (void)locationManager:(CLLocationManager *)manager
didUpdateToLocation:(CLLocation *)newLocation
fromLocation:(CLLocation *)oldLocation{
NSArray *_mutableArray = [[NSArray alloc]initWithObjects:[NSStringstringWithFormat:@"%3.4f,%3.4f",[newLocationcoordinate].latitude,
[newLocationcoordinate].longitude],nil];
[_locationsaddObjectsFromArray:_mutableArray];

NSLog(@"********位置管理代理方法*********************_locations = %@",_locations);
if ([_locationscount] >1) {
[selfloadRoute];//开始画线~~~
}
}

参考资料如下:


iOS开发之在地图上绘制出你运行的轨迹

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: