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