Table of Contents

Class ARCoreCameraDevice

Espacio de nombres
easyar

ARCoreCameraDevice implementa un dispositivo camera basado en ARCore y emite InputFrame (incluye image, camera parameters, timestamp, información de posición 6DOF y tracking status). Antes de usarlo, debe usarse java.lang.System.loadLibrary para cargar libarcore_sdk_c.so. Después de crearlo, se puede llamar a start/stop para iniciar y detener la recopilación de datos de video stream. Cuando el dispositivo ya no sea necesario, se puede llamar a close para cerrarlo. No debe usarse después de close. ARCoreCameraDevice emite InputFrame mediante inputFrameSource, y inputFrameSource debe conectarse a InputFrameSink para usarse. bufferCapacity representa la capacidad del buffer de InputFrame. Si desde el dispositivo se emiten más InputFrame que este número y no se liberan, el dispositivo dejará de emitir nuevos InputFrame hasta que se liberen los InputFrame anteriores. Esto puede causar problemas como congelación de la imagen. Nota: La implementación actual de ARCore (v1.13.0) tiene una fuga de memoria al crear y destruir session. Crear y destruir repetidamente hará que el uso de memoria siga aumentando y no se libere después de destruir.

ARCoreCameraDevice

Constructores

ARCoreCameraDevice

void easyar_ARCoreCameraDevice__ctor(easyar_ARCoreCameraDevice * * Return)
ARCoreCameraDevice()
public ARCoreCameraDevice()
constructor()
+ (easyar_ARCoreCameraDevice *) create
public convenience init()
public ARCoreCameraDevice()

Métodos

isAvailable

Comprueba si está disponible. Devuelve true solo en sistemas Android con ARCore instalado. Llamarla sin cargar libarcore_sdk_c.so devuelve false. Nota: Si el dispositivo no admite ARCore pero el apk de ARCore se instaló mediante sideload, esta función devolverá true, pero ARCore no podrá funcionar correctamente.

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

Devuelve

Tipo Descripción
Boolean

isDeviceSupported

Comprueba si el dispositivo actual es compatible.

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

Devuelve

Tipo Descripción
Boolean

bufferCapacity

Capacidad del buffer de InputFrame. El valor predeterminado es 8.

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

Devuelve

Tipo Descripción
Int32

setBufferCapacity

Establece la capacidad del buffer de InputFrame.

void easyar_ARCoreCameraDevice_setBufferCapacity(easyar_ARCoreCameraDevice * 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

Nombre Tipo Descripción
capacity Int32

Devuelve

Tipo Descripción
Void

inputFrameSource

Puerto de salida de InputFrame.

void easyar_ARCoreCameraDevice_inputFrameSource(easyar_ARCoreCameraDevice * 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()

Devuelve

Tipo Descripción
InputFrameSource

setFocusMode

Establece el focus mode en focusMode.

void easyar_ARCoreCameraDevice_setFocusMode(easyar_ARCoreCameraDevice * This, easyar_ARCoreCameraDeviceFocusMode focusMode)
void setFocusMode(ARCoreCameraDeviceFocusMode focusMode)
public void setFocusMode(int focusMode)
fun setFocusMode(focusMode: Int): Unit
- (void)setFocusMode:(easyar_ARCoreCameraDeviceFocusMode)focusMode
public func setFocusMode(_ focusMode: ARCoreCameraDeviceFocusMode) -> Void
public virtual void setFocusMode(ARCoreCameraDeviceFocusMode focusMode)

Parámetros

Nombre Tipo Descripción
focusMode ARCoreCameraDeviceFocusMode

Devuelve

Tipo Descripción
Void

start

Inicia la recopilación de datos de video stream.

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

Devuelve

Tipo Descripción
Boolean

stop

Detiene la recopilación de datos de video stream.

void easyar_ARCoreCameraDevice_stop(easyar_ARCoreCameraDevice * This)
void stop()
public void stop()
fun stop(): Unit
- (void)stop
public func stop() -> Void
public virtual void stop()

Devuelve

Tipo Descripción
Void

close

Cierra. No debe usarse después de close.

void easyar_ARCoreCameraDevice_close(easyar_ARCoreCameraDevice * This)
void close()
public void close()
fun close(): Unit
- (void)close
public func close() -> Void
public virtual void close()

Devuelve

Tipo Descripción
Void

type

Tipo de camera.

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

Devuelve

Tipo Descripción
CameraDeviceType

cameraOrientation

Ángulo de rotación en sentido horario necesario para mostrar la imagen de camera en la orientación natural del dispositivo.

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

Devuelve

Tipo Descripción
Int32

size

Obtiene el tamaño de image actual.

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

Devuelve

Tipo Descripción
Vec2I

frameRateRangeLower

Obtiene el límite inferior del rango actual de frame rate.

double easyar_ARCoreCameraDevice_frameRateRangeLower(const easyar_ARCoreCameraDevice * This)
double frameRateRangeLower()
public double frameRateRangeLower()
fun frameRateRangeLower(): Double
- (double)frameRateRangeLower
public func frameRateRangeLower() -> Double
public virtual double frameRateRangeLower()

Devuelve

Tipo Descripción
Double

frameRateRangeUpper

Obtiene el límite superior del rango actual de frame rate.

double easyar_ARCoreCameraDevice_frameRateRangeUpper(const easyar_ARCoreCameraDevice * This)
double frameRateRangeUpper()
public double frameRateRangeUpper()
fun frameRateRangeUpper(): Double
- (double)frameRateRangeUpper
public func frameRateRangeUpper() -> Double
public virtual double frameRateRangeUpper()

Devuelve

Tipo Descripción
Double