Table of Contents

Class ImageTarget

命名空間
easyar

ImageTarget表示平面圖像的target,它可以被 ImageTracker 所跟蹤。 ImageTarget內的數值在可以被讀取之前需要首先通過create...等方法填入。然後再通過 loadTarget 成功載入 ImageTracker 之後可以被 ImageTracker 檢測和跟蹤。

繼承
ImageTarget

建構函式

ImageTarget

void easyar_ImageTarget__ctor(easyar_ImageTarget * * Return)
ImageTarget()
public ImageTarget()
constructor()
+ (easyar_ImageTarget *) create
public convenience init()
public ImageTarget()

方法

createFromParameters

從參數創建。

void easyar_ImageTarget_createFromParameters(easyar_ImageTargetParameters * parameters, easyar_OptionalOfImageTarget * Return)
static std::optional<std::shared_ptr<ImageTarget>> createFromParameters(std::shared_ptr<ImageTargetParameters> parameters)
public static @Nullable ImageTarget createFromParameters(@Nonnull ImageTargetParameters parameters)
companion object fun createFromParameters(parameters: ImageTargetParameters): ImageTarget?
+ (easyar_ImageTarget *)createFromParameters:(easyar_ImageTargetParameters *)parameters
public static func createFromParameters(_ parameters: ImageTargetParameters) -> ImageTarget?
public static Optional<ImageTarget> createFromParameters(ImageTargetParameters parameters)

參數

名稱 類型 描述
parameters ImageTargetParameters

傳回值

類型 描述
Optional<ImageTarget>

createFromTargetFile

從etd文件創建。

void easyar_ImageTarget_createFromTargetFile(easyar_String * path, easyar_StorageType storageType, easyar_OptionalOfImageTarget * Return)
static std::optional<std::shared_ptr<ImageTarget>> createFromTargetFile(std::string path, StorageType storageType)
public static @Nullable ImageTarget createFromTargetFile(java.lang.@Nonnull String path, int storageType)
companion object fun createFromTargetFile(path: String, storageType: Int): ImageTarget?
+ (easyar_ImageTarget *)createFromTargetFile:(NSString *)path storageType:(easyar_StorageType)storageType
public static func createFromTargetFile(_ path: String, _ storageType: StorageType) -> ImageTarget?
public static Optional<ImageTarget> createFromTargetFile(string path, StorageType storageType)

參數

名稱 類型 描述
path String
storageType StorageType

傳回值

類型 描述
Optional<ImageTarget>

createFromTargetData

從etd數據緩存創建。

void easyar_ImageTarget_createFromTargetData(easyar_Buffer * buffer, easyar_OptionalOfImageTarget * Return)
static std::optional<std::shared_ptr<ImageTarget>> createFromTargetData(std::shared_ptr<Buffer> buffer)
public static @Nullable ImageTarget createFromTargetData(@Nonnull Buffer buffer)
companion object fun createFromTargetData(buffer: Buffer): ImageTarget?
+ (easyar_ImageTarget *)createFromTargetData:(easyar_Buffer *)buffer
public static func createFromTargetData(_ buffer: Buffer) -> ImageTarget?
public static Optional<ImageTarget> createFromTargetData(Buffer buffer)

參數

名稱 類型 描述
buffer Buffer

傳回值

類型 描述
Optional<ImageTarget>

save

保存爲etd文件。

bool easyar_ImageTarget_save(easyar_ImageTarget * This, easyar_String * path)
bool save(std::string path)
public boolean save(java.lang.@Nonnull String path)
fun save(path: String): Boolean
- (bool)save:(NSString *)path
public func save(_ path: String) -> Bool
public virtual bool save(string path)

參數

名稱 類型 描述
path String

傳回值

類型 描述
Boolean

createFromImageFile

從圖像創建。如果不需要,name、uid、meta可以傳空字符串,scale可以傳默認值1。支持jpeg或png文件。

void easyar_ImageTarget_createFromImageFile(easyar_String * path, easyar_StorageType storageType, easyar_String * name, easyar_String * uid, easyar_String * meta, float scale, easyar_OptionalOfImageTarget * Return)
static std::optional<std::shared_ptr<ImageTarget>> createFromImageFile(std::string path, StorageType storageType, std::string name, std::string uid, std::string meta, float scale)
public static @Nullable ImageTarget createFromImageFile(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 createFromImageFile(path: String, storageType: Int, name: String, uid: String, meta: String, scale: Float): ImageTarget?
+ (easyar_ImageTarget *)createFromImageFile:(NSString *)path storageType:(easyar_StorageType)storageType name:(NSString *)name uid:(NSString *)uid meta:(NSString *)meta scale:(float)scale
public static func createFromImageFile(_ path: String, _ storageType: StorageType, _ name: String, _ uid: String, _ meta: String, _ scale: Float) -> ImageTarget?
public static Optional<ImageTarget> createFromImageFile(string path, StorageType storageType, string name, string uid, string meta, float scale)

參數

名稱 類型 描述
path String
storageType StorageType
name String
uid String
meta String
scale Single

傳回值

類型 描述
Optional<ImageTarget>

scale

圖像的縮放比例。其值爲圖像寬度的物理大小與1米的比值,默認值爲1。

float easyar_ImageTarget_scale(const easyar_ImageTarget * This)
float scale()
public float scale()
fun scale(): Float
- (float)scale
public func scale() -> Float
public virtual float scale()

傳回值

類型 描述
Single

aspectRatio

圖像的寬高比。

float easyar_ImageTarget_aspectRatio(const easyar_ImageTarget * This)
float aspectRatio()
public float aspectRatio()
fun aspectRatio(): Float
- (float)aspectRatio
public func aspectRatio() -> Float
public virtual float aspectRatio()

傳回值

類型 描述
Single

setScale

設置圖像的縮放比例,設置之後會覆蓋默認值以及在json文件中設的數值。其值爲圖像寬度的物理大小與1米的比值,默認值爲1。 還需要在渲染引擎中單獨設置此模型縮放。

bool easyar_ImageTarget_setScale(easyar_ImageTarget * 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)

參數

名稱 類型 描述
scale Single

傳回值

類型 描述
Boolean

images

獲取target中存儲的圖像列表。通常這個方法用來獲取雲端返回的target的識別圖數據。

void easyar_ImageTarget_images(easyar_ImageTarget * This, easyar_ListOfImage * * Return)
std::vector<std::shared_ptr<Image>> images()
public java.util.@Nonnull ArrayList<@Nonnull Image> images()
fun images(): ArrayList<Image>
- (NSArray<easyar_Image *> *)images
public func images() -> [Image]
public virtual List<Image> images()

傳回值

類型 描述
List<Image>

runtimeID

獲取target id。target id是運行時創建的整型數據,只有在成功的配置之後纔是有效(非0)的。這個id是非0且全局遞增的。

int easyar_ImageTarget_runtimeID(const easyar_ImageTarget * This)
int runtimeID()
public int runtimeID()
fun runtimeID(): Int
- (int)runtimeID
public override func runtimeID() -> Int32
public override int runtimeID()

傳回值

類型 描述
Int32

uid

獲取target uid。ImageTarget的uid在雲識別算法中使用。在沒有接入雲識別的時候,你可以在json配置中設置這個uid,在自己的代碼中作爲另一種區分target的方法。

void easyar_ImageTarget_uid(const easyar_ImageTarget * This, easyar_String * * Return)
std::string uid()
public java.lang.@Nonnull String uid()
fun uid(): String
- (NSString *)uid
public override func uid() -> String
public override string uid()

傳回值

類型 描述
String

name

獲取target名字。名字用來在json文件中區分target。

void easyar_ImageTarget_name(const easyar_ImageTarget * This, easyar_String * * Return)
std::string name()
public java.lang.@Nonnull String name()
fun name(): String
- (NSString *)name
public override func name() -> String
public override string name()

傳回值

類型 描述
String

setName

設置target名字。這個操作會覆蓋上一次的設置或是服務器返回的數據。

void easyar_ImageTarget_setName(easyar_ImageTarget * 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)

參數

名稱 類型 描述
name String

傳回值

類型 描述
Void

meta

獲取setMetaData所設置的meta data。或者在雲識別返回的target中,獲得服務器所設置的meta data。

void easyar_ImageTarget_meta(const easyar_ImageTarget * This, easyar_String * * Return)
std::string meta()
public java.lang.@Nonnull String meta()
fun meta(): String
- (NSString *)meta
public override func meta() -> String
public override string meta()

傳回值

類型 描述
String

setMeta

設置meta data。這個操作會覆蓋上一次的設置或是服務器返回的數據。

void easyar_ImageTarget_setMeta(easyar_ImageTarget * 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)

參數

名稱 類型 描述
data String

傳回值

類型 描述
Void