Поделиться через


IARSCNViewDelegate Интерфейс

Определение

Интерфейс, представляющий обязательные методы (если таковые есть) протокола ARSCNViewDelegate.

[Foundation.Protocol(Name="ARSCNViewDelegate", WrapperType=typeof(ARKit.ARSCNViewDelegateWrapper))]
[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 IARSCNViewDelegate : ARKit.IARSessionObserver, IDisposable, SceneKit.ISCNSceneRendererDelegate
type IARSCNViewDelegate = interface
    interface INativeObject
    interface IDisposable
    interface IARSessionObserver
    interface ISCNSceneRendererDelegate
Производный
Атрибуты
Реализации

Комментарии

Этот интерфейс содержит необходимые методы (при наличии) из протокола, определенного параметром ARSCNViewDelegate.

Если разработчики создают классы, реализующие этот интерфейс, методы реализации будут автоматически экспортированы в Objective-C с соответствующей сигнатурой из метода, определенного в протоколе ARSCNViewDelegate .

Необязательные методы (если таковые имеются) предоставляются классом ARSCNViewDelegate_Extensions в качестве методов расширения для интерфейса , что позволяет разработчикам вызывать любые необязательные методы в протоколе.

Свойства

Handle

Дескриптор (указатель) на представление неуправляемого объекта.

(Унаследовано от INativeObject)

Методы расширения

DidAddNode(IARSCNViewDelegate, ISCNSceneRenderer, SCNNode, ARAnchor)

Разработчики могут переопределить этот метод, чтобы реагировать на добавление объекта , соответствующего SCNNode новому ARAnchorобъекту .

DidRemoveNode(IARSCNViewDelegate, ISCNSceneRenderer, SCNNode, ARAnchor)

Разработчики могут переопределить этот метод, чтобы реагировать на удаление node, которое было удалено после anchor удаления.

DidUpdateNode(IARSCNViewDelegate, ISCNSceneRenderer, SCNNode, ARAnchor)

Этот метод вызывается вскоре после node обновления с учетом текущего anchorсостояния .

GetNode(IARSCNViewDelegate, ISCNSceneRenderer, ARAnchor)

Извлекает объект , соответствующий SCNNode указанному anchorобъекту .

WillUpdateNode(IARSCNViewDelegate, ISCNSceneRenderer, SCNNode, ARAnchor)

Этот метод вызывается незадолго до обновления свойств для node отражения состояния anchor.

CameraDidChangeTrackingState(IARSessionObserver, ARSession, ARCamera)

Вызывается при TrackingState изменении, указывая на изменение качества отслеживания.

DidFail(IARSessionObserver, ARSession, NSError)

Вызывается при остановке session выполнения из-за ошибки.

DidOutputAudioSampleBuffer(IARSessionObserver, ARSession, CMSampleBuffer)

Разработчики могут реализовать этот метод, который вызывается вскоре после воспроизведения звукового буфера.

InterruptionEnded(IARSessionObserver, ARSession)

Разработчики могут переопределить этот метод, чтобы начать обработку кадров и отслеживание устройств после прерывания.

ShouldAttemptRelocalization(IARSessionObserver, ARSession)

Возвращает логическое значение, указывающее, следует ли пытаться переориентировать сеанс после прерывания.

WasInterrupted(IARSessionObserver, ARSession)

Разработчики могут переопределить этот метод, чтобы остановить обработку кадров и отслеживание устройств при прерывании работы.

DidApplyAnimations(ISCNSceneRendererDelegate, ISCNSceneRenderer, Double)

Разработчики могут переопределить этот метод, чтобы реагировать на завершение анимации.

DidApplyConstraints(ISCNSceneRendererDelegate, ISCNSceneRenderer, Double)

Интерфейс, представляющий обязательные методы (если таковые есть) протокола ARSCNViewDelegate.

DidRenderScene(ISCNSceneRendererDelegate, ISCNSceneRenderer, SCNScene, Double)

Этот метод вызывается вскоре после отрисовки сцены.

DidSimulatePhysics(ISCNSceneRendererDelegate, ISCNSceneRenderer, Double)

Этот метод вызывается вскоре после имитации физики.

Update(ISCNSceneRendererDelegate, ISCNSceneRenderer, Double)

Разработчики могут переопределить этот метод для выполнения обработки перед любыми действиями, анимациями или физическими симуляциями.

WillRenderScene(ISCNSceneRendererDelegate, ISCNSceneRenderer, SCNScene, Double)

Разработчики могут переопределить этот метод, чтобы выполнять обработку непосредственно перед отрисовкой сцены.

Применяется к