CLLocation的属性以及使用的解释

上一篇的链接(一个定位实例)从上一篇中的实例了解所使用的一些元素:CLLcation不仅表示一个位置点,同时也是表示一个当时所具有的相应的属性和相应的一切内容,我们同样可以继承然后添加相应的属性给它 ,eg:我可以增加温度,在那一个点,因为山上的高度,不同温度也不同,虽然可以从高度测算,但是也是一个属性,就像 CLLocationCoordinate2D(纯粹的一个位置点) 和经纬度一样.总结:CLLocationCoordinate2D 二维点, 多维点(点+所有的环境元素)CLLocationCoordinate2D < CLLocaiton*****看到那些生僻的定义点的属性类型的时候,这里一般上都是都是double类型的别名//海拔,高度@property(readonly, nonatomic) CLLocationDistance altitude;//水平的精确度(负数无效)@property(readonly, nonatomic) CLLocationAccuracy horizontalAccuracy;//垂直的精确度(负数无效)@property(readonly, nonatomic) CLLocationAccuracy verticalAccuracy;//航向 、路径 取值为:0.0 ~ 359.9 真北方向表示:0.0@property(readonly, nonatomic) CLLocationDirection course ;//速度 m/s@property(readonly, nonatomic) CLLocationSpeed speed ;//时间@property(readonly, nonatomic, copy) NSDate *timestamp;//显示楼层的信息,如果当地支持的话@property(readonly, nonatomic, copy) CLFloor *floor ;//CLFloor中的一个属性,显示低第几层楼@property(readonly, nonatomic) NSInteger level;//位置的描述,一般的对象都是可以调用这个属性来显示字符描述@property (nonatomic, readonly, copy) NSString *description;//设置要求的精度是多少,精度也高,所需要的时间就越小,选择合适的是很重要。也就是一个点覆盖了多大的范围。//*** 这里是用来给外部的使用的常量,因为extern这个关键字,我们一般是被manager来使用extern const CLLocationAccuracy kCLLocationAccuracyBestForNavigation //这一般用于车载导航extern const CLLocationAccuracy kCLLocationAccuracyBest; //extern const CLLocationAccuracy kCLLocationAccuracyNearestTenMeters;extern const CLLocationAccuracy kCLLocationAccuracyHundredMeters; //徒步比较合适extern const CLLocationAccuracy kCLLocationAccuracyKilometer;extern const CLLocationAccuracy kCLLocationAccuracyThreeKilometers;eg:_locationManager.desiredAccuracy = kCLLocationAccuracyBest;即为要求的精度为最好的。extern const CLLocationDistance CLLocationDistanceMax //设置最远的大小extern const NSTimeInterval CLTimeIntervalMax //最大的时间间隔extern const CLLocationCoordinate2D kCLLocationCoordinate2DInvalid //位置点可用extern关键字表示在其他的类中已经用过定义了这个变量。功能:一、CLLocation 对象创建以及初始化的三个方法 1、//经度、纬度 初始化一个 位置(Cllocation)对象(常用)- (instancetype)initWithLatitude:(CLLocationDegrees)latitude longitude:(CLLocationDegrees)longitude; //CLLocationDegrees 这个就是double类型的别名2、//经度,纬度、高度、水平和垂直精准度、时间点 初始化一个Cllocation对象- (instancetype)initWithCoordinate:(CLLocationCoordinate2D)coordinate altitude:(CLLocationDistance)altitude horizontalAccuracy:(CLLocationAccuracy)hAccuracy verticalAccuracy:(CLLocationAccuracy)vAccuracy timestamp:(NSDate *)timestamp;//CLLocationCoordinate2D 就是经度和纬度的结构的体下面是这个//结构体,,包括经度和纬度typedef struct { CLLocationDegrees latitude;//纬度 CLLocationDegrees longitude;//精度} CLLocationCoordinate2D;@property(readonly, nonatomic) CLLocationCoordinate2D coordinate;//结构体//这个方法是用来设置经纬度的结构体的CLLocationCoordinate2D CLLocationCoordinate2DMake(CLLocationDegrees latitude, CLLocationDegrees longitude);BOOL CLLocationCoordinate2DIsValid(CLLocationCoordinate2D coord); //用来判断相应的经纬度的结构体是否可以用3、//经度,纬度、高度、水平和垂直精准度、时间点、航向、速度初始化一个位置对象- (instancetype)initWithCoordinate:(CLLocationCoordinate2D)coordinate altitude:(CLLocationDistance)altitude horizontalAccuracy:(CLLocationAccuracy)hAccuracy verticalAccuracy:(CLLocationAccuracy)vAccuracy course:(CLLocationDirection)course speed:(CLLocationSpeed)speed timestamp:(NSDate *)timestamp 二、求距离//用来计算距离的,新的方法,,旧的可以不管了- (CLLocationDistance)distanceFromLocation:(const CLLocation *)location __OSX_AVAILABLE_STARTING(__MAC_10_6,__IPHONE_3_2);一

版权声明:本文为博主原创文章,未经博主允许不得转载。

其实每一朵花,都有它自己的生命,

CLLocation的属性以及使用的解释

相关文章:

你感兴趣的文章:

标签云: