Table of Contents

Class InertialCameraDevice

Espaço de nomes
easyar

InertialCameraDevice implementa um dispositivo de câmera baseado em inércia de movimento, saída CameraTransformType como FiveDofRotXZ de InputFrame (contendo imagem, parâmetros da câmera, timestamp, matriz de transformação de pose e estado de rastreamento). Após a criação, pode chamar start/stop para iniciar e parar a coleta de dados de fluxo de vídeo. Quando o dispositivo não for mais necessário, pode chamar close para fechá-lo. Após o close, não deve continuar a usá-lo. InertialCameraDevice emite InputFrame através de inputFrameSource, deve conectar inputFrameSource a InputFrameSink para uso. bufferCapacity indica a capacidade do buffer de InputFrame, se mais do que esse número de InputFrame forem emitidos pelo dispositivo e não forem liberados, o dispositivo deixará de emitir novos InputFrame até que os InputFrame anteriores sejam liberados. Isso pode causar problemas como travamento da imagem.

InertialCameraDevice

Construtores

InertialCameraDevice

Método de criação padrão.

void easyar_InertialCameraDevice__ctor(easyar_InertialCameraDevice * * Return)
InertialCameraDevice()
public InertialCameraDevice()
constructor()
+ (easyar_InertialCameraDevice *) create
public convenience init()
public InertialCameraDevice()

Métodos

isAvailable

Verifica se está disponível. Retorna true apenas no Android 7.0 e superior (API Level 24+) e quando o acelerômetro, giroscópio e sensor de atitude estão disponíveis.

bool easyar_InertialCameraDevice_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()

Retorna

Tipo Descrição
Boolean

bufferCapacity

Capacidade do buffer de InputFrame, valor padrão é 8.

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

Retorna

Tipo Descrição
Int32

setBufferCapacity

Define a capacidade do buffer de InputFrame.

void easyar_InertialCameraDevice_setBufferCapacity(easyar_InertialCameraDevice * 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)

Parâmetros

Nome Tipo Descrição
capacity Int32

Retorna

Tipo Descrição
Void

inputFrameSource

Porta de saída de InputFrame.

void easyar_InertialCameraDevice_inputFrameSource(easyar_InertialCameraDevice * 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()

Retorna

Tipo Descrição
InputFrameSource

setFocusMode

Define o modo de foco como focusMode. Chamado antes de start.

void easyar_InertialCameraDevice_setFocusMode(easyar_InertialCameraDevice * This, easyar_InertialCameraDeviceFocusMode focusMode)
void setFocusMode(InertialCameraDeviceFocusMode focusMode)
public void setFocusMode(int focusMode)
fun setFocusMode(focusMode: Int): Unit
- (void)setFocusMode:(easyar_InertialCameraDeviceFocusMode)focusMode
public func setFocusMode(_ focusMode: InertialCameraDeviceFocusMode) -> Void
public virtual void setFocusMode(InertialCameraDeviceFocusMode focusMode)

Parâmetros

Nome Tipo Descrição
focusMode InertialCameraDeviceFocusMode

Retorna

Tipo Descrição
Void

type

Tipo de câmera. Chamado após open bem-sucedido.

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

Retorna

Tipo Descrição
CameraDeviceType

cameraOrientation

Ângulo que a imagem da câmera precisa ser girada no sentido horário para exibir na orientação natural do dispositivo. Chamado após open bem-sucedido.

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

Retorna

Tipo Descrição
Int32

size

Obtém o tamanho atual da imagem. Chamado após open bem-sucedido.

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

Retorna

Tipo Descrição
Vec2I

supportedSizeCount

Obtém o número de todos os tamanhos de imagem suportados pelo dispositivo atual. Chamado após open bem-sucedido.

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

Retorna

Tipo Descrição
Int32

supportedSize

Obtém o index-ésimo tamanho de imagem suportado pelo dispositivo atual. Se o index estiver fora do intervalo, retorna {0, 0}. Chamado após open bem-sucedido.

easyar_Vec2I easyar_InertialCameraDevice_supportedSize(const easyar_InertialCameraDevice * 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)

Parâmetros

Nome Tipo Descrição
index Int32

Retorna

Tipo Descrição
Vec2I

setSize

Define o tamanho atual da imagem. O valor opcional mais próximo do valor definido será usado. Pode usar size para obter o tamanho real. Chamado após open bem-sucedido. Após definir size, frameRateRange pode mudar.

bool easyar_InertialCameraDevice_setSize(easyar_InertialCameraDevice * 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)

Parâmetros

Nome Tipo Descrição
size Vec2I

Retorna

Tipo Descrição
Boolean

open

Abre a câmera traseira do dispositivo, retorna false se a abertura falhar.

bool easyar_InertialCameraDevice_open(easyar_InertialCameraDevice * This)
bool open()
public boolean open()
fun open(): Boolean
- (bool)open
public func `open`() -> Bool
public virtual bool open()

Retorna

Tipo Descrição
Boolean

start

Inicia a coleta de dados de fluxo de vídeo.

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

Retorna

Tipo Descrição
Boolean

stop

Para a coleta de dados de fluxo de vídeo.

void easyar_InertialCameraDevice_stop(easyar_InertialCameraDevice * This)
void stop()
public void stop()
fun stop(): Unit
- (void)stop
public func stop() -> Void
public virtual void stop()

Retorna

Tipo Descrição
Void

reset

Redefine o estado.

void easyar_InertialCameraDevice_reset(easyar_InertialCameraDevice * This)
void reset()
public void reset()
fun reset(): Unit
- (void)reset
public func reset() -> Void
public virtual void reset()

Retorna

Tipo Descrição
Void

close

Fecha. Após close, não deve continuar a usar.

void easyar_InertialCameraDevice_close(easyar_InertialCameraDevice * This)
void close()
public void close()
fun close(): Unit
- (void)close
public func close() -> Void
public virtual void close()

Retorna

Tipo Descrição
Void

frameRateRangeLower

Obtém o limite inferior do intervalo de taxa de quadros atual. Chamado após open bem-sucedido.

double easyar_InertialCameraDevice_frameRateRangeLower(const easyar_InertialCameraDevice * This)
double frameRateRangeLower()
public double frameRateRangeLower()
fun frameRateRangeLower(): Double
- (double)frameRateRangeLower
public func frameRateRangeLower() -> Double
public virtual double frameRateRangeLower()

Retorna

Tipo Descrição
Double

frameRateRangeUpper

Obtém o limite superior do intervalo de taxa de quadros atual. Chamado após open bem-sucedido.

double easyar_InertialCameraDevice_frameRateRangeUpper(const easyar_InertialCameraDevice * This)
double frameRateRangeUpper()
public double frameRateRangeUpper()
fun frameRateRangeUpper(): Double
- (double)frameRateRangeUpper
public func frameRateRangeUpper() -> Double
public virtual double frameRateRangeUpper()

Retorna

Tipo Descrição
Double