IARSessionDelegate 接口

定义

表示所需方法的接口 ((如果协议 ARSessionDelegate有任何) )。

[Foundation.Protocol(Name="ARSessionDelegate", WrapperType=typeof(ARKit.ARSessionDelegateWrapper))]
[ObjCRuntime.Introduced(ObjCRuntime.PlatformName.iOS, 11, 0, ObjCRuntime.PlatformArchitecture.All, null)]
[ObjCRuntime.Unavailable(ObjCRuntime.PlatformName.WatchOS, ObjCRuntime.PlatformArchitecture.All, null)]
[ObjCRuntime.Unavailable(ObjCRuntime.PlatformName.TvOS, ObjCRuntime.PlatformArchitecture.All, null)]
[ObjCRuntime.Unavailable(ObjCRuntime.PlatformName.MacOSX, ObjCRuntime.PlatformArchitecture.All, null)]
public interface IARSessionDelegate : ARKit.IARSessionObserver, IDisposable
type IARSessionDelegate = interface
    interface INativeObject
    interface IDisposable
    interface IARSessionObserver
派生
属性
实现

注解

此接口包含所需的方法 ((如果任何) 由 ARSessionDelegate定义的协议)。

如果开发人员创建实现此接口的类,则实现方法将自动导出到 Objective-C,并使用协议中 ARSessionDelegate 定义的方法的匹配签名。

可选方法 (类是否提供 ARSessionDelegate_Extensions 任何) 作为接口的扩展方法,从而允许开发人员在协议上调用任何可选方法。

属性

Handle

处理指向非托管对象表示形式的 (指针) 。

(继承自 INativeObject)

扩展方法

DidAddAnchors(IARSessionDelegate, ARSession, ARAnchor[])

添加到 sessionanchors调用。

DidRemoveAnchors(IARSessionDelegate, ARSession, ARAnchor[])

session中删除时anchors调用。

DidUpdateAnchors(IARSessionDelegate, ARSession, ARAnchor[])

指示 anchors 由于跟踪而更新的 。

DidUpdateFrame(IARSessionDelegate, ARSession, ARFrame)

指示 frame 由于跟踪而已更新。

CameraDidChangeTrackingState(IARSessionObserver, ARSession, ARCamera)

更改时调用 TrackingState ,表示跟踪质量发生更改。

DidFail(IARSessionObserver, ARSession, NSError)

由于错误而 session 停止运行时调用。

DidOutputAudioSampleBuffer(IARSessionObserver, ARSession, CMSampleBuffer)

开发人员可以实现在播放音频缓冲区后不久调用的此方法。

InterruptionEnded(IARSessionObserver, ARSession)

开发人员可以重写此方法,以在中断后开始帧处理和设备跟踪。

ShouldAttemptRelocalization(IARSessionObserver, ARSession)

返回一个布尔值,该值指示会话是否应在中断后尝试重新定向。

WasInterrupted(IARSessionObserver, ARSession)

发生中断时,开发人员可以重写此方法以停止帧处理和设备跟踪。

适用于