Table of Contents

Class ObjectTarget

命名空间
easyar
程序集
EasyAR.Sense.dll

ObjectTarget表示3D object target,它可以被 `ObjectTracker`_ 所跟踪。 ObjectTarget的大小由 `obj` 文件决定。可以通过修改 `scale` 达到修改size的目的。 `scale` 默认为1。 ObjectTarget通过 `ObjectTracker.loadTarget`_ 成功载入 `ObjectTracker`_ 之后可以被 `ObjectTracker`_ 检测和跟踪。

public class ObjectTarget : Target, IDisposable
继承
ObjectTarget
实现
继承成员

构造函数

ObjectTarget()

public ObjectTarget()

方法

Clone()

public ObjectTarget Clone()

CloneObject()

protected override object CloneObject()

boundingBox()

物体的包围盒,包括盒子的8个顶点。 顶点索引定义如下: ::

       4-----7
      /|    /|
     5-----6 |    z
     | |   | |    |
     | 0---|-3    o---y
     |/    |/    /
     1-----2    x
 </p>
public virtual List<Vec3F> boundingBox()

createFromObjectFile(string, StorageType, string, string, string, float)

从obj, mtl和jpg/png文件创建。

public static Optional<ObjectTarget> createFromObjectFile(string path, StorageType storageType, string name, string uid, string meta, float scale)

参数

path
storageType
name
uid
meta
scale

createFromParameters(ObjectTargetParameters)

从参数创建。

public static Optional<ObjectTarget> createFromParameters(ObjectTargetParameters parameters)

参数

parameters

meta()

获取setMetaData所设置的meta data。或者在云识别返回的target中,获得服务器所设置的meta data。

public override string meta()

name()

获取target名字。名字用来在json文件中区分target。

public override string name()

runtimeID()

获取target id。target id是运行时创建的整型数据,只有在成功的配置之后才是有效(非0)的。这个id是非0且全局递增的。

public override int runtimeID()

scale()

模型的缩放比例。其值为模型在空间中的物理大小与在模型坐标系中的大小的比值,默认值为1。(假设模型坐标系中的标尺单位为米)

public virtual float scale()

setMeta(string)

设置meta data。这个操作会覆盖上一次的设置或是服务器返回的数据。

public override void setMeta(string data)

参数

data

setName(string)

设置target名字。这个操作会覆盖上一次的设置或是服务器返回的数据。

public override void setName(string name)

参数

name

setScale(float)

设置模型的缩放比例。设置之后会覆盖默认值以及在json文件中设的数值。其值为模型在空间中的物理大小与在模型坐标系中的大小的比值,默认值为1。(假设模型坐标系中的标尺单位为米) 还需要在渲染引擎中单独设置此模型缩放。 注意该设置需要在通过 `ObjectTracker.loadTarget`_ 载入 `ObjectTracker`_ 之前进行。

public virtual bool setScale(float scale)

参数

scale

uid()

获取target uid。ImageTarget的uid在云识别算法中使用。在没有接入云识别的时候,你可以在json配置中设置这个uid,在自己的代码中作为另一种区分target的方法。

public override string uid()