Class ARCoreCameraDevice
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)
public ARCoreCameraDevice()
+ (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
public static func isAvailable() -> Bool
public static bool isAvailable()
Valore restituito
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
bufferCapacity
Capacità del buffer di InputFrame. Il valore predefinito è 8.
int easyar_ARCoreCameraDevice_bufferCapacity(const easyar_ARCoreCameraDevice * This)
public int bufferCapacity()
fun bufferCapacity(): Int
public func bufferCapacity() -> Int32
public virtual int bufferCapacity()
Valore restituito
setBufferCapacity
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
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
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
Valore restituito
start
Avvia l'acquisizione dei dati del flusso video.
bool easyar_ARCoreCameraDevice_start(easyar_ARCoreCameraDevice * This)
public func start() -> Bool
public virtual bool start()
Valore restituito
stop
Interrompe l'acquisizione dei dati del flusso video.
void easyar_ARCoreCameraDevice_stop(easyar_ARCoreCameraDevice * This)
public func stop() -> Void
public virtual void stop()
Valore restituito
close
Chiude. Dopo la chiusura non deve più essere utilizzato.
void easyar_ARCoreCameraDevice_close(easyar_ARCoreCameraDevice * This)
public func close() -> Void
public virtual void close()
Valore restituito
type
easyar_CameraDeviceType easyar_ARCoreCameraDevice_type(const easyar_ARCoreCameraDevice * This)
- (easyar_CameraDeviceType)type
public func type() -> CameraDeviceType
public virtual CameraDeviceType type()
Valore restituito
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)
public int cameraOrientation()
fun cameraOrientation(): Int
public func cameraOrientation() -> Int32
public virtual int cameraOrientation()
Valore restituito
size
Ottiene le dimensioni attuali dell'immagine.
easyar_Vec2I easyar_ARCoreCameraDevice_size(const easyar_ARCoreCameraDevice * This)
public @Nonnull Vec2I size()
public func size() -> Vec2I
public virtual Vec2I size()
Valore restituito
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
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