Table of Contents

Class ARCoreCameraDevice

Ruang Nama
easyar

ARCoreCameraDevice mengimplementasikan perangkat kamera berbasis ARCore yang menghasilkan InputFrame (berisi gambar, parameter kamera, timestamp, informasi posisi 6DOF, dan status pelacakan). Saat digunakan, perlu memuat libarcore_sdk_c.so terlebih dahulu menggunakan java.lang.System.loadLibrary. Setelah dibuat, dapat memanggil start/stop untuk memulai dan menghentikan pengumpulan data aliran video. Saat perangkat tidak diperlukan lagi, dapat memanggil close untuk menutupnya. Setelah close, tidak boleh digunakan lagi. ARCoreCameraDevice menghasilkan InputFrame melalui inputFrameSource. inputFrameSource harus dihubungkan ke InputFrameSink untuk digunakan. bufferCapacity menunjukkan kapasitas buffer InputFrame. Jika InputFrame yang dihasilkan dari perangkat ini melebihi jumlah ini dan belum dirilis, perangkat tidak akan menghasilkan InputFrame baru hingga InputFrame sebelumnya dirilis. Hal ini dapat menyebabkan masalah seperti gambar macet. Catatan: Implementasi ARCore saat ini (v1.13.0) memiliki kebocoran memori saat membuat dan menghancurkan sesi. Membuat dan menghancurkan berulang kali akan menyebabkan penggunaan memori terus bertambah dan tidak dilepaskan setelah penghancuran.

ARCoreCameraDevice

Konstruktor

ARCoreCameraDevice

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

Metode

isAvailable

Memeriksa ketersediaan. Hanya mengembalikan true pada sistem Android dan saat ARCore terinstal. Memanggil tanpa memuat libarcore_sdk_c.so akan mengembalikan false. Catatan: Jika perangkat tidak mendukung ARCore, tetapi apk ARCore diinstal melalui sideload, fungsi ini akan mengembalikan true, tetapi ARCore tidak dapat berfungsi normal.

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

Mengembalikan

Tipe Deskripsi
Boolean

isDeviceSupported

Memeriksa apakah perangkat saat ini didukung.

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

Mengembalikan

Tipe Deskripsi
Boolean

bufferCapacity

Kapasitas buffer InputFrame, nilai default adalah 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()

Mengembalikan

Tipe Deskripsi
Int32

setBufferCapacity

Mengatur kapasitas buffer 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)

Parameter

Nama Tipe Deskripsi
capacity Int32

Mengembalikan

Tipe Deskripsi
Void

inputFrameSource

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

Mengembalikan

Tipe Deskripsi
InputFrameSource

setFocusMode

Mengatur mode fokus menjadi 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)

Parameter

Nama Tipe Deskripsi
focusMode ARCoreCameraDeviceFocusMode

Mengembalikan

Tipe Deskripsi
Void

start

Memulai pengumpulan data aliran 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()

Mengembalikan

Tipe Deskripsi
Boolean

stop

Menghentikan pengumpulan data aliran 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()

Mengembalikan

Tipe Deskripsi
Void

close

Menutup. Setelah close, tidak boleh digunakan lagi.

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

Mengembalikan

Tipe Deskripsi
Void

type

Tipe kamera.

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

Mengembalikan

Tipe Deskripsi
CameraDeviceType

cameraOrientation

Sudut rotasi searah jarum jam yang diperlukan untuk menampilkan gambar kamera dalam orientasi alami perangkat.

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

Mengembalikan

Tipe Deskripsi
Int32

size

Mendapatkan ukuran gambar saat ini.

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

Mengembalikan

Tipe Deskripsi
Vec2I

frameRateRangeLower

Mendapatkan batas bawah rentang frame rate saat ini.

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

Mengembalikan

Tipe Deskripsi
Double

frameRateRangeUpper

Mendapatkan batas atas rentang frame rate saat ini.

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

Mengembalikan

Tipe Deskripsi
Double