作者:
声明:转发本文,请联系作者授权
ARAnchor.h
ARAnchor : NSObject <NSCopying, NSSecureCoding>
API_AVAILABLE(ios(11.0)) API_UNAVAILABLE(macos, watchos, tvos)
表示3D空间中物理位置和方向的对象
- 属 性
属性 | 属性 | 备注 | SDK版本 |
---|---|---|---|
NSUUID *identifier | 锚的唯一标识符 | iOS11.4 | |
matrix_float4x4 transform | 转换矩阵,用于定义锚点在世界坐标中的旋转,平移和缩放 | iOS11.4 |
* 方 法
方法 | 说明 | 备注 | SDK版本 |
---|---|---|---|
- (instancetype)initWithTransform:(matrix_float4x4)transform |
初始化一个新的锚点对象 | iOS11.4 | |
- (instancetype)init |
NS_UNAVAILABLE | iOS11.4 | |
+ (instancetype)new |
NS_UNAVAILABLE | iOS11.4 |
* ARTrackable协 议
正在跟踪的场景中的真实世界对象或位置
- 属 性
属性 | 属性 | 备注 | SDK版本 |
---|---|---|---|
BOOL isTracked |
跟踪锚的状态 | isTracked值用于确定锚变换的有效性。当不再检测到被跟踪的对象时相机图像,其锚点将返回NO为isTracked | iOS11.4 |
ARCamera.h
ARAnchor : NSObject <NSCopying, NSSecureCoding>
API_AVAILABLE(ios(11.0)) API_UNAVAILABLE(macos, watchos, tvos)
- ARTrackingState API_AVAILABLE(ios(11.0)) API_UNAVAILABLE(macos, watchos, tvos)
描述摄像机跟踪状态的值
- 属 性
属性 | 说明 | 备注 | SDK版本 |
---|---|---|---|
ARTrackingStateNotAvailable |
跟踪不可用 | iOS11.4 | |
ARTrackingStateLimited |
跟踪是有限的。请参阅跟踪原因了解详情 | iOS11.4 | |
ARTrackingStateNormal |
跟踪是正常的 | iOS11.4 |
* ARTrackingStateReason
描述相机跟踪状态受限的原因
- 属 性
属性 | 说明 | 备注 | SDK版本 |
---|---|---|---|
ARTrackingStateReasonNone |
跟踪不受限制 | iOS11.4 | |
ARTrackingStateReasonInitializing |
由于正在进行初始化,跟踪受到限制 | iOS11.4 | |
ARTrackingStateReasonExcessiveMotion |
由于相机的过度运动,跟踪受到限制 | iOS11.4 | |
ARTrackingStateReasonInsufficientFeatures |
由于缺少相机可见的功能,因此跟踪受到限制 | iOS11.4 | |
ARTrackingStateReasonRelocalizing |
由于进行重新定位,跟踪受到限制 | iOS11.4 |
ARCamera : NSObject <NSCopying>
API_AVAILABLE(ios(11.0)) API_UNAVAILABLE(macos, watchos, tvos)
表示相机及其参数的模型
- 属 性
属性 | 说明 | 备注 | SDK版本 |
---|---|---|---|
matrix_float4x4 transform |
转换矩阵,用于定义摄像机在世界坐标中的旋转和平移 | iOS11.4 | |
vector_float3 eulerAngles |
相机的方向定义为欧拉角 | 此向量中的组件顺序与旋转轴匹配:1.间距(x分量)是绕节点x轴的旋转(以弧度表示)2.偏航(y分量)是绕节点y轴的旋转(以弧度表示)3.滚动(z分量)是绕节点的z轴旋转(以弧度表示)ARKit以与组件相反的顺序应用这些旋转:1.roll 2.yaw 3.pitch | iOS11.4 |
ARTrackingState trackingState |
相机的跟踪状态 | iOS11.4 | |
ARTrackingStateReason |
摄像机当前跟踪状态的原因 | iOS11.4 | |
matrix_float3x3 intrinsics |
相机内在的 | 矩阵具有以下内容:fx 0 px0 fy py 0 0 1 fx和fy是以像素为单位的焦距。px和py是主要点的坐标,以像素为单位。原点位于左上角像素的中心。 | iOS11.4 |
CGSize imageResolution |
相机图像分辨率,以像素为单位 | iOS11.4 | |
matrix_float4x4 projectionMatrix |
相机的投影矩阵 | 投影矩阵假设没有远剪裁平面限制 | iOS11.4 |
- (CGPoint)projectPoint:(vector_float3)point orientation:(UIInterfaceOrientation)orientation viewportSize:(CGSize)viewportSize |
将世界坐标系中的3D点投影到2D视口空间 | iOS11.4 | |
- (matrix_float4x4)projectionMatrixForOrientation:(UIInterfaceOrientation)orientation viewportSize:(CGSize)viewportSize zNear:(CGFloat)zNear zFar:(CGFloat)zFar |
在给定渲染参数的情况下为相机创建投影矩阵 | iOS11.4 | |
- (matrix_float4x4)viewMatrixForOrientation:(UIInterfaceOrientation)orientation |
给定界面方向,为摄像机创建视图矩阵 | 视图矩阵可用于将几何图形转换为给定方向的相机空间 | iOS11.4 |
* 方 法
方法 | 说明 | 备注 | SDK版本 |
---|---|---|---|
- (instancetype)init |
iOS11.4 | ||
+ (instancetype)new |
iOS11.4 |
ARConfiguration.h
- ARWorldAlignment API_AVAILABLE(ios(11.0)) API_UNAVAILABLE(macos, watchos, tvos)
枚举常量用于指示世界对齐
- 枚 举
常量 | 说明 | 备注 | SDK版本 |
---|---|---|---|
ARWorldAlignmentGravity |
将世界与由矢量(0,-1,0)定义的重力对齐 | iOS11.4 | |
ARWorldAlignmentGravityAndHeading |
将世界与由向量(0,-1,0)定义的重力对齐和向量(w.r.t. True North)由向量(0,0,-1)给出 | iOS11.4 | |
ARWorldAlignmentCamera |
将世界与相机的方向对齐 | iOS11.4 |
ARPlaneDetection API_AVAILABLE(ios(11.0)) API_UNAVAILABLE(macos, watchos, tvos)
指示要检测的平面类型
- 枚 举
常量 | 说明 | 备注 | SDK版本 |
---|---|---|---|
ARPlaneDetectionNone |
没有运行平面检测 | iOS11.4 | |
ARPlaneDetectionHorizontal |
平面检测确定场景中的水平平面 | iOS11.4 | |
ARPlaneDetectionVertical |
平面检测确定场景中的垂直平面 | iOS11.4 |
ARConfiguration : NSObject
API_AVAILABLE(ios(11.0)) API_UNAVAILABLE(macos, watchos, tvos)
- 属 性
属性 | 说明 | 备注 | SDK版本 |
---|---|---|---|
BOOL isSupported |
确定此设备是否支持ARConfiguration | iOS11.4 | |
NSArray<ARVideoFormat *> *supportedVideoFormats |
此配置和设备支持的视频格式列表 | 列表中的第一个元素是会话输出的默认格式API_AVAILABLE(ios(11.3)) | iOS11.4 |
ARVideoFormat *videoFormat |
会话输出的视频格式 | API_AVAILABLE(ios(11.3)) | iOS11.4 |
ARWorldAlignment worldAlignment |
确定坐标系应如何与世界对齐 | 默认为ARWorldAlignmentGravity | iOS11.4 |
BOOL lightEstimationEnabled |
启用或禁用光估计 | 默认情况下启用 | iOS11.4 |
BOOL providesAudioData |
确定是否捕获和提供音频数据 | 默认情况下禁用 | iOS11.4 |
* 方 法
方法 | 说明 | 备注 | SDK版本 |
---|---|---|---|
- (instancetype)init |
iOS11.4 | ||
+ (instancetype)new |
iOS11.4 |
ARWorldTrackingConfiguration : ARConfiguration
API_AVAILABLE(ios(11.0)) API_UNAVAILABLE(macos, watchos, tvos)
- 属 性
属性 | 说明 | 备注 | SDK版本 |
---|---|---|---|
BOOL autoFocusEnabled |
启用或禁用连续自动对焦 | 默认情况下启用 | iOS11.4 |
ARPlaneDetection planeDetection |
要在场景中检测的平面类型 | 如果设置,将继续检测新平面并随时更新。检测到的飞机将被添加到会话中。 | 如果设置,将继续检测新平面并随时更新。检测到的飞机将被添加到会话中。ARPlaneAnchor对象。如果合并了两个平面,则将删除较新的平面。默认为ARPlaneDetectionNone |
NSSet<ARReferenceImage *> *detectionImages |
要在场景中检测的图 | 如果设置会话将尝试检测指定的图像。检测到图像时,会将ARImageAnchor添加到会话中 | iOS11.3 |
* 方 法
方法 | 说明 | 备注 | SDK版本 |
---|---|---|---|
- (instancetype)init |
iOS11.4 | ||
+ (instancetype)new |
NS_SWIFT_UNAVAILABLE(“Use init() instead”) | iOS11.4 |
AROrientationTrackingConfiguration : ARConfiguration
API_AVAILABLE(ios(11.0)) API_UNAVAILABLE(macos, watchos, tvos)
用于运行方向跟踪的配置
- 属 性
属性 | 说明 | 备注 | SDK版本 |
---|---|---|---|
BOOL autoFocusEnabled |
启用或禁用连续自动对焦 | 默认情况下启用 | iOS11.4 |
* 方 法
方法 | 说明 | 备注 | SDK版本 |
---|---|---|---|
- (instancetype)init |
API_AVAILABLE(ios(11.3)) | iOS11.4 |