Class ARKitCameraDevice
ARKitCameraDevice реализует камеру на основе ARKit, выводящую InputFrame (содержит изображение, параметры камеры, временную метку, 6DOF-позиционирование и статус отслеживания).
После создания можно вызывать start/stop для запуска и остановки сбора видеопотока.
Когда устройство больше не нужно, вызовите close для его закрытия. После close использовать его не следует.
ARKitCameraDevice выводит InputFrame через inputFrameSource, который следует подключить к InputFrameSink для использования.
bufferCapacity указывает ёмкость буфера для InputFrame. Если устройство выводит больше кадров, чем это значение, и они не освобождены, новые InputFrame перестанут выводиться до освобождения предыдущих. Это может вызвать зависание изображения.
ARKitCameraDevice
Конструкторы
ARKitCameraDevice
void easyar_ARKitCameraDevice__ctor(easyar_ARKitCameraDevice * * Return)
public ARKitCameraDevice()
+ (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
public static func isAvailable() -> Bool
public static bool isAvailable()
Возвращаемое значение
bufferCapacity
int easyar_ARKitCameraDevice_bufferCapacity(const easyar_ARKitCameraDevice * This)
public int bufferCapacity()
fun bufferCapacity(): Int
public func bufferCapacity() -> Int32
public virtual int bufferCapacity()
Возвращаемое значение
setBufferCapacity
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 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()
Возвращаемое значение
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)
Параметры
Возвращаемое значение
start
Начинает сбор видеопотока.
bool easyar_ARKitCameraDevice_start(easyar_ARKitCameraDevice * This)
public func start() -> Bool
public virtual bool start()
Возвращаемое значение
stop
Останавливает сбор видеопотока.
void easyar_ARKitCameraDevice_stop(easyar_ARKitCameraDevice * This)
public func stop() -> Void
public virtual void stop()
Возвращаемое значение
close
Закрывает устройство. После close использовать не следует.
void easyar_ARKitCameraDevice_close(easyar_ARKitCameraDevice * This)
public func close() -> Void
public virtual void close()
Возвращаемое значение
type
easyar_CameraDeviceType easyar_ARKitCameraDevice_type(const easyar_ARKitCameraDevice * This)
- (easyar_CameraDeviceType)type
public func type() -> CameraDeviceType
public virtual CameraDeviceType type()
Возвращаемое значение
cameraOrientation
Угол поворота изображения камеры по часовой стрелке для естественной ориентации устройства.
int easyar_ARKitCameraDevice_cameraOrientation(const easyar_ARKitCameraDevice * This)
public int cameraOrientation()
fun cameraOrientation(): Int
public func cameraOrientation() -> Int32
public virtual int cameraOrientation()
Возвращаемое значение
size
Получает текущий размер изображения.
easyar_Vec2I easyar_ARKitCameraDevice_size(const easyar_ARKitCameraDevice * This)
public @Nonnull Vec2I size()
public func size() -> Vec2I
public virtual Vec2I size()
Возвращаемое значение
frameRate
Получает текущую частоту кадров.
double easyar_ARKitCameraDevice_frameRate(const easyar_ARKitCameraDevice * This)
public double frameRate()
public func frameRate() -> Double
public virtual double frameRate()
Возвращаемое значение
supportedSizeCount
Получает количество всех поддерживаемых размеров изображения.
int easyar_ARKitCameraDevice_supportedSizeCount(const easyar_ARKitCameraDevice * This)
public int supportedSizeCount()
fun supportedSizeCount(): Int
- (int)supportedSizeCount
public func supportedSizeCount() -> Int32
public virtual int supportedSizeCount()
Возвращаемое значение
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 |
|
Возвращаемое значение
setSize
Устанавливает текущий размер изображения. Используется ближайшее доступное значение. Фактический размер можно получить через size. После установки диапазон frameRateRange может измениться.
bool easyar_ARKitCameraDevice_setSize(easyar_ARKitCameraDevice * This, easyar_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 |
|
Возвращаемое значение
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()
Возвращаемое значение
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 |
|
Возвращаемое значение
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 |
|
Возвращаемое значение