Table of Contents

Class VisionOSARKitCameraDevice

Espace de noms
easyar

VisionOSARKitCameraDevice implémente un périphérique caméra basé sur VisionOS ARKit, produisant des InputFrame (contenant l'image, les paramètres de la caméra, l'horodatage, les informations de position 6DOF et l'état du suivi). Après sa création, les méthodes start/stop peuvent être appelées pour démarrer et arrêter la capture du flux vidéo. Lorsque l'appareil n'est plus nécessaire, close peut être appelé pour le fermer. Il ne doit plus être utilisé après close. VisionOSARKitCameraDevice sort des InputFrame via inputFrameSource. inputFrameSource doit être connecté à un InputFrameSink pour utilisation. bufferCapacity indique la capacité de la mémoire tampon des InputFrame. Si plus de InputFrame que cette capacité sont produits par l'appareil et n'ont pas été libérés, celui-ci cessera de produire de nouveaux InputFrame jusqu'à ce que les précédents soient libérés. Cela peut provoquer des blocages d'image, etc.

VisionOSARKitCameraDevice

Constructeurs

VisionOSARKitCameraDevice

void easyar_VisionOSARKitCameraDevice__ctor(easyar_VisionOSARKitCameraDevice * * Return)
VisionOSARKitCameraDevice()
public VisionOSARKitCameraDevice()
constructor()
+ (easyar_VisionOSARKitCameraDevice *) create
public convenience init()
public VisionOSARKitCameraDevice()

Méthodes

isAvailable

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

Retours

Type Description
Boolean

bufferCapacity

InputFrame capacité de la mémoire tampon, valeur par défaut 8.

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

Retours

Type Description
Int32

setBufferCapacity

Définir la capacité du tampon InputFrame.

void easyar_VisionOSARKitCameraDevice_setBufferCapacity(easyar_VisionOSARKitCameraDevice * 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)

Paramètres

Nom Type Description
capacity Int32

Retours

Type Description
Void

requestPermissions

Demandez les autorisations système nécessaires sur VisionOS, y compris la [Perception du monde] et l’[Accès à la caméra].

Explications:

  • "VisionOS" reste en anglais comme spécifié
  • Les termes techniques entre crochets sont traduits précisément :
    • "World Sensing" → "Perception du monde"
    • "Camera Access" → "Accès à la caméra"
  • La structure grammaticale française est adaptée ("y compris" + article défini)
  • Respect strict des consignes : pas d'espaces ajoutés, pas d'explications supplémentaires, format d'origine conservé.
void easyar_VisionOSARKitCameraDevice_requestPermissions(easyar_VisionOSARKitCameraDevice * This, easyar_CallbackScheduler * callbackScheduler, easyar_OptionalOfFunctorOfVoidFromPermissionStatusAndString permissionCallback)
void requestPermissions(std::shared_ptr<CallbackScheduler> callbackScheduler, std::optional<std::function<void(PermissionStatus, std::string)>> permissionCallback)
public void requestPermissions(@Nonnull CallbackScheduler callbackScheduler, @Nullable FunctorOfVoidFromPermissionStatusAndString permissionCallback)
fun requestPermissions(callbackScheduler: CallbackScheduler, permissionCallback: FunctorOfVoidFromPermissionStatusAndString?): Unit
- (void)requestPermissions:(easyar_CallbackScheduler *)callbackScheduler permissionCallback:(void (^)(easyar_PermissionStatus status, NSString * value))permissionCallback
public func requestPermissions(_ callbackScheduler: CallbackScheduler, _ permissionCallback: ((PermissionStatus, String) -> Void)?) -> Void
public virtual void requestPermissions(CallbackScheduler callbackScheduler, Optional<Action<PermissionStatus, string>> permissionCallback)

Paramètres

Nom Type Description
callbackScheduler CallbackScheduler
permissionCallback Optional<Action<PermissionStatus,String>>

Retours

Type Description
Void

inputFrameSource

InputFrame port de sortie

void easyar_VisionOSARKitCameraDevice_inputFrameSource(easyar_VisionOSARKitCameraDevice * 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()

Retours

Type Description
InputFrameSource

getMotionInputData

Obtenir des données d'entrée de mouvement synchronisées.

void easyar_VisionOSARKitCameraDevice_getMotionInputData(easyar_VisionOSARKitCameraDevice * This, easyar_OptionalOfMotionInputData * Return)
std::optional<std::shared_ptr<MotionInputData>> getMotionInputData()
public @Nullable MotionInputData getMotionInputData()
fun getMotionInputData(): MotionInputData?
- (easyar_MotionInputData *)getMotionInputData
public func getMotionInputData() -> MotionInputData?
public virtual Optional<MotionInputData> getMotionInputData()

Retours

Type Description
Optional<MotionInputData>

start

Commencer la collecte des données de flux vidéo

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

Retours

Type Description
Boolean

stop

Arrêtez la collecte des données de flux vidéo.

void easyar_VisionOSARKitCameraDevice_stop(easyar_VisionOSARKitCameraDevice * This)
void stop()
public void stop()
fun stop(): Unit
- (void)stop
public func stop() -> Void
public virtual void stop()

Retours

Type Description
Void

close

close after

void easyar_VisionOSARKitCameraDevice_close(easyar_VisionOSARKitCameraDevice * This)
void close()
public void close()
fun close(): Unit
- (void)close
public func close() -> Void
public virtual void close()

Retours

Type Description
Void

size

Obtenir la taille d'image actuelle.

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

Retours

Type Description
Vec2I

type

type de camera

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

Retours

Type Description
CameraDeviceType

cameraOrientation

l'angle de rotation dans le sens des aiguilles d'une montre nécessaire pour afficher l'image de la caméra dans l'orientation naturelle de l'appareil

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

Retours

Type Description
Int32

frameRateRangeLower

Obtenir la borne inférieure de la plage de taux de rafraîchissement actuel.

double easyar_VisionOSARKitCameraDevice_frameRateRangeLower(const easyar_VisionOSARKitCameraDevice * This)
double frameRateRangeLower()
public double frameRateRangeLower()
fun frameRateRangeLower(): Double
- (double)frameRateRangeLower
public func frameRateRangeLower() -> Double
public virtual double frameRateRangeLower()

Retours

Type Description
Double

frameRateRangeUpper

Obtenir la borne supérieure de la plage de fréquence d'images actuelle.

double easyar_VisionOSARKitCameraDevice_frameRateRangeUpper(const easyar_VisionOSARKitCameraDevice * This)
double frameRateRangeUpper()
public double frameRateRangeUpper()
fun frameRateRangeUpper(): Double
- (double)frameRateRangeUpper
public func frameRateRangeUpper() -> Double
public virtual double frameRateRangeUpper()

Retours

Type Description
Double