Table of Contents

Class ARCoreCameraDevice

Spazio dei nomi
easyar

ARCoreCameraDevice implementa un dispositivo fotocamera basato su ARCore, che emette InputFrame (contenente immagini, parametri della fotocamera, timestamp, informazioni sulla posizione 6DOF e stato di tracciamento). Per utilizzarlo, è necessario caricare prima libarcore_sdk_c.so utilizzando java.lang.System.loadLibrary. Dopo la creazione, è possibile chiamare start/stop per avviare e interrompere l'acquisizione dei dati del flusso video. Quando il dispositivo non è più necessario, chiamare close per chiuderlo. Dopo la chiusura non deve più essere utilizzato. ARCoreCameraDevice emette InputFrame tramite inputFrameSource; inputFrameSource deve essere collegato a un InputFrameSink per l'utilizzo. bufferCapacity indica la capacità del buffer di InputFrame. Se vengono emessi da questo dispositivo più InputFrame di questo numero e non vengono rilasciati, il dispositivo cesserà di emettere nuovi InputFrame finché quelli precedenti non saranno rilasciati. Ciò potrebbe causare problemi come il congelamento dello schermo. Nota: l'implementazione corrente di ARCore (v1.13.0) presenta una perdita di memoria durante la creazione e la distruzione della sessione. Creazioni e distruzioni ripetute porteranno a un aumento continuo dell'utilizzo della memoria e la memoria non verrà liberata dopo la distruzione.

ARCoreCameraDevice

Costruttori

ARCoreCameraDevice

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

Metodi

isAvailable

Verifica la disponibilità. Restituisce true solo su sistema Android e se ARCore è installato. Se chiamato senza aver caricato libarcore_sdk_c.so, restituirà false. Nota: se il dispositivo non supporta ARCore, ma l'apk di ARCore è installato tramite sideloading, questa funzione restituirà true, ma ARCore non funzionerà correttamente.

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

Valore restituito

Tipo Descrizione
Boolean

isDeviceSupported

Verifica se il dispositivo corrente è supportato.

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

Valore restituito

Tipo Descrizione
Boolean

bufferCapacity

Capacità del buffer di InputFrame. Il valore predefinito è 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()

Valore restituito

Tipo Descrizione
Int32

setBufferCapacity

Imposta la capacità del buffer di 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)

Parametri

Nome Tipo Descrizione
capacity Int32

Valore restituito

Tipo Descrizione
Void

inputFrameSource

Porta di uscita per 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()

Valore restituito

Tipo Descrizione
InputFrameSource

setFocusMode

Imposta la modalità di messa a fuoco su 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)

Parametri

Nome Tipo Descrizione
focusMode ARCoreCameraDeviceFocusMode

Valore restituito

Tipo Descrizione
Void

start

Avvia l'acquisizione dei dati del flusso video.

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

Valore restituito

Tipo Descrizione
Boolean

stop

Interrompe l'acquisizione dei dati del flusso video.

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

Valore restituito

Tipo Descrizione
Void

close

Chiude. Dopo la chiusura non deve più essere utilizzato.

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

Valore restituito

Tipo Descrizione
Void

type

Tipo di fotocamera.

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

Valore restituito

Tipo Descrizione
CameraDeviceType

cameraOrientation

Angolo di rotazione in senso orario richiesto per visualizzare correttamente l'immagine della fotocamera nell'orientamento naturale 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()

Valore restituito

Tipo Descrizione
Int32

size

Ottiene le dimensioni attuali dell'immagine.

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

Valore restituito

Tipo Descrizione
Vec2I

frameRateRangeLower

Ottiene il limite inferiore dell'intervallo di frame rate corrente.

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

Valore restituito

Tipo Descrizione
Double

frameRateRangeUpper

Ottiene il limite superiore dell'intervallo di frame rate corrente.

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

Valore restituito

Tipo Descrizione
Double