http://blog.csdn.net/u012496940/article/details/47405345  上一篇的链接(一个定位实例)



从上一篇中的实例了解所使用的一些元素:



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这个keyword。我们通常是被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   //位置点可用



externkeyword表示在其它的类中已经用过定义了这个变量。



功能:

一、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的属性以及使用的解释的更多相关文章

  1. Android layer-list的属性和使用具体解释

    Android layer-list的属性和使用具体解释.layer-list是用来多个图层堆叠显示的,借这个特性能够做一些特别的效果(比方:阴影.以下的效果等),也能够投机取巧. 1.代码片 < ...

  2. python中类的属性(class attribute)的解释

    python中的类叫 class object,类的实例叫instance object. 类 Class Objects 类拥有两种操作,1.类属性 attribute references 2.实 ...

  3. python中类属性和数据属性的解释

    python中的类叫class object,类的实例叫instance object. 类 Class Objects 类拥有两种操作,1.类属性 attribute references 2.实例 ...

  4. 奇葩属性:layout_weight 的解释及使用

    在Android的控件布局中,有一个奇葩的 layout_weight 属性,定义如下: layout_weight : 用于指定剩余空闲空间的分割比例.用法: 01 <LinearLayout ...

  5. React 属性和状态具体解释

    属性的含义和使用方法 props=properties 属性:一个事物的性质与关系 属性往往是与生俱来的.无法自己改变的. 属性的使用方法: 第一种方法:键值对 1.传入一个字符串:"Hi& ...

  6. HBase的属性

    一:基本属性 1.查看属性 2.解释属性 NAME:列簇名 BLOOMFILTER:布隆过滤器,用于对storefile的过滤 共有三种类型: ROW:行健过滤 ROWCOL:行列过滤 NONE:无 ...

  7. 标签的innerHTML属性和html()

    在新公司开发编码的时候,经常写js代码:有时候就需要往某个标签里添加一些html脚本或者要拿到某个标签里的html脚本,那么就会用到innerHTML和html. 1.innerHTML属性 w3sc ...

  8. Android ImageView 的scaleType 属性图解

    ImageView 是 Android 中最常用的控件之一,而在使用ImageView时,必不可少的会使用到它的scaleType属性.该属性指定了你想让ImageView如何显示图片,包括是否进行缩 ...

  9. 080 HBase的属性

    一:基本属性 1.查看属性 2.解释属性 NAME:列簇名 BLOOMFILTER:布隆过滤器,用于对storefile的过滤 共有三种类型: ROW:行健过滤 ROWCOL:行列过滤 NONE:无 ...

随机推荐

  1. 数组,寻找第K大的数

    时间复杂度 O(n) def partition(data,left,right): if (len(data)<=0 or left<0 or right>=len(data)): ...

  2. C#解析单层html的中的文本,然后拼接起来

    匹配单层html的小demo,应该能匹配大多数html字符串.多层(嵌套)html标签解析不出来.可能有小bug,我抛砖引玉下,哈哈. using System; using System.Colle ...

  3. S-HR之导入模板指向实现类配置

    SELECT * FROM t_bs_basefileimpmap where FENTITYNAME='com.kingdee.eas.hr.affair.app.ResignBizBillEntr ...

  4. WebDriver的多浏览器测试的浏览器驱动程序

    1.在使用IE浏览器进行WebDriver自动化测试之前,需要从http://docs.seleniumhq.org/download/网站上下载一个WebDriver链接IE浏览器的驱动程序,文件名 ...

  5. Jupyter IPython dead kernel and do not restart

    本人遇到的情况:dead kernel & try to restart failed 查看CMD发现这个库安装有问题 解决办法 1.pip uninstall backports.shuti ...

  6. python 弹窗

    import ctypes message = ctypes.windll.user32.MessageBoxA(0,'message','tips',0)

  7. redis中基本命令

    记录一下redis中的基本命令.redis中有redis-cli工具客户端,使用这个客户端来发送一些命令 一.redis-cli的使用  1.redis-cli使用之发送命令 2.redis-cli使 ...

  8. vue 中slot 的具体用法

    子组件 <template> <div class="slotcontent"> <ul> <!--<slot></sl ...

  9. 运维笔记:zabbix的运用(1)安装过程

    前言 如果是用了阿里云或者腾讯云,他们都有各种监控帮我们做好.但是如果是遇到了自己维护自己机房的服务器,那么一些可视化或者监控就很有意义了.监控可能有很多种方案,这里就以比较老牌通吃的zabbix来解 ...

  10. Django的forms包部分重要用法:

    from django.forms import fields from django.forms import Form from django.forms import widgets 在view ...