CLLocation的属性以及使用的解释

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);

时间: 2024-10-10 09:53:55

CLLocation的属性以及使用的解释的相关文章

React 属性和状态具体解释

属性的含义和使用方法 props=properties 属性:一个事物的性质与关系 属性往往是与生俱来的.无法自己改变的. 属性的使用方法: 第一种方法:键值对 1.传入一个字符串:"Hi"(字符串)/{"Hi"}; 2.传入一个数组{[arry]}; 3.传入一个变量{variable} <!DOCTYPE html> <html lang="en"> <head> <meta charset=&quo

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

摘要 layout_weight 的含义及使用 在Android的控件布局中,有一个奇葩的 layout_weight 属性,定义如下: layout_weight : 用于指定剩余空闲空间的分割比例.用法: <LinearLayout android:orientation="horizontal"> <TextView android:layout_width="wrap_content" android:layout_height="

Android RelativeLayout属性大全(中文解释)

相对于给定ID控件 android:layout_above 将该控件的底部置于给定ID的控件之上; android:layout_below 将该控件的底部置于给定ID的控件之下; android:layout_toLeftOf 将该控件的右边缘与给定ID的控件左边缘对齐; android:layout_toRightOf 将该控件的左边缘与给定ID的控件右边缘对齐; android:layout_alignBaseline 将该控件的baseline与给定ID的baseline对齐; and

Hbase的属性

Hbase的属性 一:基本属性 1.查看属性 2.解释属性 NAME:列簇名 BLOOMFILTER:布隆过滤器,用于对storefile的过滤 共有三种类型: ROW:行健过滤 ROWCOL:行列过滤 NONE:无 VERSIONS:版本数 MIN_VERSIONS:最小版本数 TTL:版本存货活时间 BLOCKSIZE:数据块的大小,默认64KB IN_MEMORY:激进内存,赋予一些列簇在缓存中具有较高的优先级 BLOCKCACHE:数据块缓存,可以将常用的列簇设为true,不常使用的设为

属性资源与Android命名空间

更新: 对于自定义属性资源,现在不实用http://schemas.android.com/apk/res/<Packge name> 的形式了, 统一用 "http://schemas.android.com/apk/res-auto" Android应用程序将所有的静态资源都封装在了APK文件中,并根据这些资源文件名(不包括扩展名)或key属性的值生成资源ID.这些ID将作为变量的形式被定义在R类的相应子类中.例如,所有的图像资源(res/drawable目录中的资源文

Unreal Engine 4(虚幻UE4)GameplayAbilities 插件入门教程(五)技能属性集(AttributeSet)

如果没有完成前面的教程,请前往学习.先上一段理论介绍(源于https://wiki.unrealengine.com/GameplayAbilities_and_You#GameplayTasks): [如果您没有耐心看完这些介绍,请调到MarkA处] AttributeSets are thankfully very simple to explain. They define float values (and ONLY float values. Right now only float

CSS text-overflow属性详解

html代码:<div><p><span>CSS Web Design 我爱CSS-Web标准化 Div+css教程 - www.52css.com</span><p></div> css代码:div{width:200px;/*容器的基本定义*/height:200px; } /* IE下的样式 */ p span{display: block;width:200px;/*对宽度的定义,根据情况修改*/overflow: hidde

简析Jmeter中一些属性含义

一.线程组中3个线程属性的解析 看到网上很多对这个3个属性非常统一的解释,但是自己操作的数据却无法解释通,百思不得其解,终于在我师父的帮助下,豁然开朗. 当然还有好多没有弄懂的地方,但是起码我对于设置的这个3个属性值有了很好的理解,下面将已举例子的形式更好的阐述. 1.     线程数:2 ramp-up period (in seconds):1 循环次数:永远 持续时间:1分钟 Q:按照上述的设置,1秒钟发2个线程,60s是120个线程,那么聚合报告中的samples应该是120,可是实际上

Spark 附带示例完整解释(原文已在IBM Developworks发表)

前文回顾 从上一篇本文作者的文章<Spark 部署及示例代码讲解>已经可以知道示例代码的执行顺序是依次从左向右的,Run-example.sh->load-spark-env.sh->lib 目录下的 jar 包文件->spark-submit.sh->spark-class,图 1 给出了整体脚本调用顺序. 图 1. Spark 示例代码运行过程描述图 点击查看大图 回页首 SCP 命令 由于涉及到 Linux 操作系统,可能读者需要在多台机器间进行数据拷贝,所以列举