Table of Contents

Class ARKitCameraDevice

Пространство имен
easyar

ARKitCameraDevice реализует камеру на основе ARKit, выводящую InputFrame (содержит изображение, параметры камеры, временную метку, 6DOF-позиционирование и статус отслеживания). После создания можно вызывать start/stop для запуска и остановки сбора видеопотока. Когда устройство больше не нужно, вызовите close для его закрытия. После close использовать его не следует. ARKitCameraDevice выводит InputFrame через inputFrameSource, который следует подключить к InputFrameSink для использования. bufferCapacity указывает ёмкость буфера для InputFrame. Если устройство выводит больше кадров, чем это значение, и они не освобождены, новые InputFrame перестанут выводиться до освобождения предыдущих. Это может вызвать зависание изображения.

ARKitCameraDevice

Конструкторы

ARKitCameraDevice

void easyar_ARKitCameraDevice__ctor(easyar_ARKitCameraDevice * * Return)
ARKitCameraDevice()
public ARKitCameraDevice()
constructor()
+ (easyar_ARKitCameraDevice *) create
public convenience init()
public ARKitCameraDevice()

Методы

isAvailable

Проверяет доступность. Возвращает true только на iOS 11+ и поддерживаемом оборудовании.

bool easyar_ARKitCameraDevice_isAvailable(void)
static bool isAvailable()
public static boolean isAvailable()
companion object fun isAvailable(): Boolean
+ (bool)isAvailable
public static func isAvailable() -> Bool
public static bool isAvailable()

Возвращаемое значение

Тип Описание
Boolean

bufferCapacity

Ёмкость буфера для InputFrame. По умолчанию: 8.

int easyar_ARKitCameraDevice_bufferCapacity(const easyar_ARKitCameraDevice * This)
int bufferCapacity()
public int bufferCapacity()
fun bufferCapacity(): Int
- (int)bufferCapacity
public func bufferCapacity() -> Int32
public virtual int bufferCapacity()

Возвращаемое значение

Тип Описание
Int32

setBufferCapacity

Устанавливает ёмкость буфера для InputFrame.

void easyar_ARKitCameraDevice_setBufferCapacity(easyar_ARKitCameraDevice * This, int capacity)
void setBufferCapacity(int capacity)
public void setBufferCapacity(int capacity)
fun setBufferCapacity(capacity: Int): Unit
- (void)setBufferCapacity:(int)capacity
public func setBufferCapacity(_ capacity: Int32) -> Void
public virtual void setBufferCapacity(int capacity)

Параметры

Имя Тип Описание
capacity Int32

Возвращаемое значение

Тип Описание
Void

inputFrameSource

Выходной порт для InputFrame.

void easyar_ARKitCameraDevice_inputFrameSource(easyar_ARKitCameraDevice * This, easyar_InputFrameSource * * Return)
std::shared_ptr<InputFrameSource> inputFrameSource()
public @Nonnull InputFrameSource inputFrameSource()
fun inputFrameSource(): InputFrameSource
- (easyar_InputFrameSource *)inputFrameSource
public func inputFrameSource() -> InputFrameSource
public virtual InputFrameSource inputFrameSource()

Возвращаемое значение

Тип Описание
InputFrameSource

setFocusMode

Устанавливает режим фокусировки focusMode. Вызывать до start(). Актуально для iOS 11.3+.

void easyar_ARKitCameraDevice_setFocusMode(easyar_ARKitCameraDevice * This, easyar_ARKitCameraDeviceFocusMode focusMode)
void setFocusMode(ARKitCameraDeviceFocusMode focusMode)
public void setFocusMode(int focusMode)
fun setFocusMode(focusMode: Int): Unit
- (void)setFocusMode:(easyar_ARKitCameraDeviceFocusMode)focusMode
public func setFocusMode(_ focusMode: ARKitCameraDeviceFocusMode) -> Void
public virtual void setFocusMode(ARKitCameraDeviceFocusMode focusMode)

Параметры

Имя Тип Описание
focusMode ARKitCameraDeviceFocusMode

Возвращаемое значение

Тип Описание
Void

start

Начинает сбор видеопотока.

bool easyar_ARKitCameraDevice_start(easyar_ARKitCameraDevice * This)
bool start()
public boolean start()
fun start(): Boolean
- (bool)start
public func start() -> Bool
public virtual bool start()

Возвращаемое значение

Тип Описание
Boolean

stop

Останавливает сбор видеопотока.

void easyar_ARKitCameraDevice_stop(easyar_ARKitCameraDevice * This)
void stop()
public void stop()
fun stop(): Unit
- (void)stop
public func stop() -> Void
public virtual void stop()

Возвращаемое значение

Тип Описание
Void

close

Закрывает устройство. После close использовать не следует.

void easyar_ARKitCameraDevice_close(easyar_ARKitCameraDevice * This)
void close()
public void close()
fun close(): Unit
- (void)close
public func close() -> Void
public virtual void close()

Возвращаемое значение

Тип Описание
Void

type

Тип камеры.

easyar_CameraDeviceType easyar_ARKitCameraDevice_type(const easyar_ARKitCameraDevice * This)
CameraDeviceType type()
public int type()
fun type(): Int
- (easyar_CameraDeviceType)type
public func type() -> CameraDeviceType
public virtual CameraDeviceType type()

Возвращаемое значение

Тип Описание
CameraDeviceType

cameraOrientation

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

int easyar_ARKitCameraDevice_cameraOrientation(const easyar_ARKitCameraDevice * This)
int cameraOrientation()
public int cameraOrientation()
fun cameraOrientation(): Int
- (int)cameraOrientation
public func cameraOrientation() -> Int32
public virtual int cameraOrientation()

Возвращаемое значение

Тип Описание
Int32

size

Получает текущий размер изображения.

easyar_Vec2I easyar_ARKitCameraDevice_size(const easyar_ARKitCameraDevice * This)
Vec2I size()
public @Nonnull Vec2I size()
fun size(): Vec2I
- (easyar_Vec2I *)size
public func size() -> Vec2I
public virtual Vec2I size()

Возвращаемое значение

Тип Описание
Vec2I

frameRate

Получает текущую частоту кадров.

double easyar_ARKitCameraDevice_frameRate(const easyar_ARKitCameraDevice * This)
double frameRate()
public double frameRate()
fun frameRate(): Double
- (double)frameRate
public func frameRate() -> Double
public virtual double frameRate()

Возвращаемое значение

Тип Описание
Double

supportedSizeCount

Получает количество всех поддерживаемых размеров изображения.

int easyar_ARKitCameraDevice_supportedSizeCount(const easyar_ARKitCameraDevice * This)
int supportedSizeCount()
public int supportedSizeCount()
fun supportedSizeCount(): Int
- (int)supportedSizeCount
public func supportedSizeCount() -> Int32
public virtual int supportedSizeCount()

Возвращаемое значение

Тип Описание
Int32

supportedSize

Получает размер изображения по индексу index из поддерживаемых. При недопустимом index возвращает {0,0}.

easyar_Vec2I easyar_ARKitCameraDevice_supportedSize(const easyar_ARKitCameraDevice * This, int index)
Vec2I supportedSize(int index)
public @Nonnull Vec2I supportedSize(int index)
fun supportedSize(index: Int): Vec2I
- (easyar_Vec2I *)supportedSize:(int)index
public func supportedSize(_ index: Int32) -> Vec2I
public virtual Vec2I supportedSize(int index)

Параметры

Имя Тип Описание
index Int32

Возвращаемое значение

Тип Описание
Vec2I

setSize

Устанавливает текущий размер изображения. Используется ближайшее доступное значение. Фактический размер можно получить через size. После установки диапазон frameRateRange может измениться.

bool easyar_ARKitCameraDevice_setSize(easyar_ARKitCameraDevice * This, easyar_Vec2I size)
bool setSize(Vec2I size)
public boolean setSize(@Nonnull Vec2I size)
fun setSize(size: Vec2I): Boolean
- (bool)setSize:(easyar_Vec2I *)size
public func setSize(_ size: Vec2I) -> Bool
public virtual bool setSize(Vec2I size)

Параметры

Имя Тип Описание
size Vec2I

Возвращаемое значение

Тип Описание
Boolean

supportedFrameRateCount

Получает количество поддерживаемых частот кадров.

int easyar_ARKitCameraDevice_supportedFrameRateCount(const easyar_ARKitCameraDevice * This)
int supportedFrameRateCount()
public int supportedFrameRateCount()
fun supportedFrameRateCount(): Int
- (int)supportedFrameRateCount
public func supportedFrameRateCount() -> Int32
public virtual int supportedFrameRateCount()

Возвращаемое значение

Тип Описание
Int32

supportedFrameRate

Получает поддерживаемую частоту кадров по индексу index.

double easyar_ARKitCameraDevice_supportedFrameRate(const easyar_ARKitCameraDevice * This, int index)
double supportedFrameRate(int index)
public double supportedFrameRate(int index)
fun supportedFrameRate(index: Int): Double
- (double)supportedFrameRate:(int)index
public func supportedFrameRate(_ index: Int32) -> Double
public virtual double supportedFrameRate(int index)

Параметры

Имя Тип Описание
index Int32

Возвращаемое значение

Тип Описание
Double

setFrameRate

Устанавливает текущую частоту кадров устройства.

bool easyar_ARKitCameraDevice_setFrameRate(easyar_ARKitCameraDevice * This, double frameRate)
bool setFrameRate(double frameRate)
public boolean setFrameRate(double frameRate)
fun setFrameRate(frameRate: Double): Boolean
- (bool)setFrameRate:(double)frameRate
public func setFrameRate(_ frameRate: Double) -> Bool
public virtual bool setFrameRate(double frameRate)

Параметры

Имя Тип Описание
frameRate Double

Возвращаемое значение

Тип Описание
Boolean