ObjectTarget représente une cible d'objet 3D, qui peut être suivie par ObjectTracker.
La taille d'ObjectTarget est déterminée par le fichier obj. Elle peut être modifiée en ajustant le paramètre scale, dont la valeur par défaut est 1.
Après avoir été chargé avec succès dans ObjectTracker via loadTarget, ObjectTarget peut être détecté et suivi par ObjectTracker.
void easyar_ObjectTarget_createFromParameters(easyar_ObjectTargetParameters * parameters, easyar_OptionalOfObjectTarget * Return)
static std::optional<std::shared_ptr<ObjectTarget>> createFromParameters(std::shared_ptr<ObjectTargetParameters> parameters)
public static @Nullable ObjectTarget createFromParameters(@Nonnull ObjectTargetParameters parameters)
companion object fun createFromParameters(parameters: ObjectTargetParameters): ObjectTarget?
+ (easyar_ObjectTarget *)createFromParameters:(easyar_ObjectTargetParameters *)parameters
public static func createFromParameters(_ parameters: ObjectTargetParameters) -> ObjectTarget?
public static Optional<ObjectTarget> createFromParameters(ObjectTargetParameters parameters)
void easyar_ObjectTarget_createFromObjectFile(easyar_String * path, easyar_StorageType storageType, easyar_String * name, easyar_String * uid, easyar_String * meta, float scale, easyar_OptionalOfObjectTarget * Return)
static std::optional<std::shared_ptr<ObjectTarget>> createFromObjectFile(std::string path, StorageType storageType, std::string name, std::string uid, std::string meta, float scale)
public static @Nullable ObjectTarget createFromObjectFile(java.lang.@Nonnull String path, int storageType, java.lang.@Nonnull String name, java.lang.@Nonnull String uid, java.lang.@Nonnull String meta, float scale)
companion object fun createFromObjectFile(path: String, storageType: Int, name: String, uid: String, meta: String, scale: Float): ObjectTarget?
+ (easyar_ObjectTarget *)createFromObjectFile:(NSString *)path storageType:(easyar_StorageType)storageType name:(NSString *)name uid:(NSString *)uid meta:(NSString *)meta scale:(float)scale
public static func createFromObjectFile(_ path: String, _ storageType: StorageType, _ name: String, _ uid: String, _ meta: String, _ scale: Float) -> ObjectTarget?
public static Optional<ObjectTarget> createFromObjectFile(string path, StorageType storageType, string name, string uid, string meta, float scale)
Échelle du modèle. Il s'agit du rapport entre la taille physique du modèle dans l'espace et sa taille dans le système de coordonnées du modèle, avec une valeur par défaut de 1. (En supposant que l'unité d'échelle dans le système de coordonnées du modèle est le mètre)
Boîte englobante de l'objet, incluant les 8 sommets de la boîte.
Les indices des sommets sont définis comme suit :
4-----7
/| /|
5-----6 | z
| | | | |
| 0---|-3 o---y
|/ |/ /
1-----2 x
void easyar_ObjectTarget_boundingBox(easyar_ObjectTarget * This, easyar_ListOfVec3F * * Return)
std::vector<Vec3F> boundingBox()
public java.util.@Nonnull ArrayList<@Nonnull Vec3F> boundingBox()
fun boundingBox(): ArrayList<Vec3F>
- (NSArray<easyar_Vec3F *> *)boundingBox
public func boundingBox() -> [Vec3F]
public virtual List<Vec3F> boundingBox()
Définissez l'échelle du modèle. Ce paramètre remplacera la valeur par défaut et celle définie dans le fichier json après configuration. Sa valeur correspond au rapport entre la taille physique du modèle dans l'espace et sa taille dans le système de coordonnées du modèle, avec une valeur par défaut de 1. (Supposons que l'unité d'échelle dans le système de coordonnées du modèle soit le mètre)
Il est également nécessaire de configurer cette mise à l'échelle du modèle séparément dans le moteur de rendu.
Notez que ce paramètre doit être configuré avant de charger ObjectTracker via loadTarget.
bool easyar_ObjectTarget_setScale(easyar_ObjectTarget * This, float scale)
bool setScale(float scale)
public boolean setScale(float scale)
fun setScale(scale: Float): Boolean
- (bool)setScale:(float)scale
public func setScale(_ scale: Float) -> Bool
public virtual bool setScale(float scale)
Obtenez l'UID cible. L'uid d'ImageTarget est utilisé dans l'algorithme de reconnaissance cloud. Sans accès au cloud, vous pouvez définir cet uid dans la configuration JSON et l'utiliser dans votre propre code comme une autre méthode pour distinguer les cibles.
void easyar_ObjectTarget_setName(easyar_ObjectTarget * This, easyar_String * name)
void setName(std::string name)
public void setName(java.lang.@Nonnull String name)
fun setName(name: String): Unit
- (void)setName:(NSString *)name
public override func setName(_ name: String) -> Void
public override void setName(string name)
void easyar_ObjectTarget_setMeta(easyar_ObjectTarget * This, easyar_String * data)
void setMeta(std::string data)
public void setMeta(java.lang.@Nonnull String data)
fun setMeta(data: String): Unit
- (void)setMeta:(NSString *)data
public override func setMeta(_ data: String) -> Void
public override void setMeta(string data)