ObjectTarget Class¶
Inherits: Target
Description¶
ObjectTarget represents 3d object targets that can be tracked by ObjectTracker .
The size of ObjectTarget is determined by the obj file. You can change it by changing the object scale, which is default to 1.
A ObjectTarget can be tracked by ObjectTracker after a successful load into the ObjectTracker using ObjectTracker.loadTarget .
Constructor¶
- C
void easyar_ObjectTarget__ctor(easyar_ObjectTarget * * Return)
- C++17
ObjectTarget()
- C++03
ObjectTarget()
- Java
public ObjectTarget()
- Kotlin
constructor()
- Objective-C
+ (easyar_ObjectTarget *) create
- Swift
public convenience init()
- C#
public ObjectTarget()
createFromParameters¶
Creates a target from parameters.
- C
void easyar_ObjectTarget_createFromParameters(easyar_ObjectTargetParameters * parameters, easyar_OptionalOfObjectTarget * Return)
- C++17
static std::optional<std::shared_ptr<ObjectTarget>> createFromParameters(std::shared_ptr<ObjectTargetParameters> parameters)
- C++03
static void createFromParameters(ObjectTargetParameters * parameters, ObjectTarget * * Return)
- Java
public static @Nullable ObjectTarget createFromParameters(@Nonnull ObjectTargetParameters parameters)
- Kotlin
companion object fun createFromParameters(parameters: ObjectTargetParameters): ObjectTarget?
- Objective-C
+ (easyar_ObjectTarget *)createFromParameters:(easyar_ObjectTargetParameters *)parameters
- Swift
public static func createFromParameters(_ parameters: ObjectTargetParameters) -> ObjectTarget?
- C#
public static Optional<ObjectTarget> createFromParameters(ObjectTargetParameters parameters)
createFromObjectFile¶
Creats a target from obj, mtl and jpg/png files.
- C
void easyar_ObjectTarget_createFromObjectFile(easyar_String * path, easyar_StorageType storageType, easyar_String * name, easyar_String * uid, easyar_String * meta, float scale, easyar_OptionalOfObjectTarget * Return)
- C++17
static std::optional<std::shared_ptr<ObjectTarget>> createFromObjectFile(std::string path, StorageType storageType, std::string name, std::string uid, std::string meta, float scale)
- C++03
static void createFromObjectFile(String * path, StorageType storageType, String * name, String * uid, String * meta, float scale, ObjectTarget * * Return)
- Java
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)
- Kotlin
companion object fun createFromObjectFile(path: String, storageType: Int, name: String, uid: String, meta: String, scale: Float): ObjectTarget?
- Objective-C
+ (easyar_ObjectTarget *)createFromObjectFile:(NSString *)path storageType:(easyar_StorageType)storageType name:(NSString *)name uid:(NSString *)uid meta:(NSString *)meta scale:(float)scale
- Swift
public static func createFromObjectFile(_ path: String, _ storageType: StorageType, _ name: String, _ uid: String, _ meta: String, _ scale: Float) -> ObjectTarget?
- C#
public static Optional<ObjectTarget> createFromObjectFile(string path, StorageType storageType, string name, string uid, string meta, float scale)
scale¶
The scale of model. The value is the physical scale divided by model coordinate system scale. The default value is 1. (Supposing the unit of model coordinate system is 1 meter.)
- C
float easyar_ObjectTarget_scale(const easyar_ObjectTarget * This)
- C++17
float scale()
- C++03
float scale()
- Java
public float scale()
- Kotlin
fun scale(): Float
- Objective-C
- (float)scale
- Swift
public func scale() -> Float
- C#
public virtual float scale()
boundingBox¶
The bounding box of object, it contains the 8 points of the box.
Vertices's indices are defined and stored following the rule:
4-----7
/| /|
5-----6 | z
| | | | |
| 0---|-3 o---y
|/ |/ /
1-----2 x
- C
void easyar_ObjectTarget_boundingBox(easyar_ObjectTarget * This, easyar_ListOfVec3F * * Return)
- C++17
std::vector<Vec3F> boundingBox()
- C++03
void boundingBox(ListOfVec3F * * Return)
- Java
public java.util.@Nonnull ArrayList<@Nonnull Vec3F> boundingBox()
- Kotlin
fun boundingBox(): ArrayList<Vec3F>
- Objective-C
- (NSArray<easyar_Vec3F *> *)boundingBox
- Swift
public func boundingBox() -> [Vec3F]
- C#
public virtual List<Vec3F> boundingBox()
setScale¶
Sets model target scale, this will overwrite the value set in the json file or the default value. The value is the physical scale divided by model coordinate system scale. The default value is 1. (Supposing the unit of model coordinate system is 1 meter.)
It is needed to set the model scale in rendering engine separately.
It also should been done before loading ObjectTarget into ObjectTracker using ObjectTracker.loadTarget .
- C
bool easyar_ObjectTarget_setScale(easyar_ObjectTarget * This, float scale)
- C++17
bool setScale(float scale)
- C++03
bool setScale(float scale)
- Java
public boolean setScale(float scale)
- Kotlin
fun setScale(scale: Float): Boolean
- Objective-C
- (bool)setScale:(float)scale
- Swift
public func setScale(_ scale: Float) -> Bool
- C#
public virtual bool setScale(float scale)
runtimeID¶
Returns the target id. A target id is a integer number generated at runtime. This id is non-zero and increasing globally.
- C
int easyar_ObjectTarget_runtimeID(const easyar_ObjectTarget * This)
- C++17
int runtimeID()
- C++03
int runtimeID()
- Java
public int runtimeID()
- Kotlin
fun runtimeID(): Int
- Objective-C
- (int)runtimeID
- Swift
public override func runtimeID() -> Int32
- C#
public override int runtimeID()
uid¶
Returns the target uid. A target uid is useful in cloud based algorithms. If no cloud is used, you can set this uid in the json config as a alternative method to distinguish from targets.
- C
void easyar_ObjectTarget_uid(const easyar_ObjectTarget * This, easyar_String * * Return)
- C++17
std::string uid()
- C++03
void uid(String * * Return)
- Java
public java.lang.@Nonnull String uid()
- Kotlin
fun uid(): String
- Objective-C
- (NSString *)uid
- Swift
public override func uid() -> String
- C#
public override string uid()
name¶
Returns the target name. Name is used to distinguish targets in a json file.
- C
void easyar_ObjectTarget_name(const easyar_ObjectTarget * This, easyar_String * * Return)
- C++17
std::string name()
- C++03
void name(String * * Return)
- Java
public java.lang.@Nonnull String name()
- Kotlin
fun name(): String
- Objective-C
- (NSString *)name
- Swift
public override func name() -> String
- C#
public override string name()
setName¶
Set name. It will erase previously set data or data from cloud.
- C
void easyar_ObjectTarget_setName(easyar_ObjectTarget * This, easyar_String * name)
- C++17
void setName(std::string name)
- C++03
void setName(String * name)
- Java
public void setName(java.lang.@Nonnull String name)
- Kotlin
fun setName(name: String): Unit
- Objective-C
- (void)setName:(NSString *)name
- Swift
public override func setName(_ name: String) -> Void
- C#
public override void setName(string name)
meta¶
Returns the meta data set by setMetaData. Or, in a cloud returned target, returns the meta data set in the cloud server.
- C
void easyar_ObjectTarget_meta(const easyar_ObjectTarget * This, easyar_String * * Return)
- C++17
std::string meta()
- C++03
void meta(String * * Return)
- Java
public java.lang.@Nonnull String meta()
- Kotlin
fun meta(): String
- Objective-C
- (NSString *)meta
- Swift
public override func meta() -> String
- C#
public override string meta()
setMeta¶
Set meta data. It will erase previously set data or data from cloud.
- C
void easyar_ObjectTarget_setMeta(easyar_ObjectTarget * This, easyar_String * data)
- C++17
void setMeta(std::string data)
- C++03
void setMeta(String * data)
- Java
public void setMeta(java.lang.@Nonnull String data)
- Kotlin
fun setMeta(data: String): Unit
- Objective-C
- (void)setMeta:(NSString *)data
- Swift
public override func setMeta(_ data: String) -> Void
- C#
public override void setMeta(string data)