Class ObjectTarget
- 네임스페이스
- easyar
ObjectTarget는 3D object target을 나타내며, ObjectTracker에 의해 추적될 수 있습니다.
ObjectTarget의 크기는 obj 파일에 의해 결정됩니다. scale을 수정하여 크기를 변경할 수 있으며, scale의 기본값은 1입니다.
ObjectTarget는 loadTarget을 통해 ObjectTracker에 성공적으로 로드된 후 ObjectTracker에 의해 감지 및 추적될 수 있습니다.
- 상속
-
ObjectTarget
생성자
ObjectTarget
void easyar_ObjectTarget__ctor(easyar_ObjectTarget * * Return)
ObjectTarget()
public ObjectTarget()
constructor()
+ (easyar_ObjectTarget *) create
public convenience init()
public ObjectTarget()
메서드
createFromParameters
파라미터로부터 생성
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)
매개 변수
| 이름 | 형식 | 설명 |
|---|---|---|
| parameters | ObjectTargetParameters |
반환 값
| 형식 | 설명 |
|---|---|
| Optional<ObjectTarget> |
createFromObjectFile
obj, mtl 및 jpg/png 파일에서 생성.
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)
매개 변수
| 이름 | 형식 | 설명 |
|---|---|---|
| path | String | |
| storageType | StorageType | |
| name | String | |
| uid | String | |
| meta | String | |
| scale | Single |
반환 값
| 형식 | 설명 |
|---|---|
| Optional<ObjectTarget> |
scale
모델의 스케일링 비율. 값은 모델의 물리적 크기와 모델 좌표계 내 크기의 비율로 정의되며, 기본값은 1입니다. (모델 좌표계의 단위는 미터로 가정)
float easyar_ObjectTarget_scale(const easyar_ObjectTarget * This)
float scale()
public float scale()
fun scale(): Float
- (float)scale
public func scale() -> Float
public virtual float scale()
반환 값
| 형식 | 설명 |
|---|---|
| Single |
boundingBox
물체의 바운딩 박스, 박스의 8-개 정점을 포함합니다.
정점 인덱스는 다음과 같이 정의됩니다:
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()
반환 값
| 형식 | 설명 |
|---|---|
| List<Vec3F> |
setScale
모델의 스케일 비율을 설정합니다. 설정 후에는 기본값 및 json 파일에 설정된 값을 덮어씁니다. 값은 모델이 물리적 공간에서의 크기와 모델 좌표계에서의 크기의 비율이며, 기본값은 1입니다. (모델 좌표계의 스케일 단위는 미터라고 가정)
또한 렌더링 엔진에서 이 모델 스케일을 별도로 설정해야 합니다.
참고: 이 설정은 ObjectTracker를 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)
매개 변수
| 이름 | 형식 | 설명 |
|---|---|---|
| scale | Single |
반환 값
| 형식 | 설명 |
|---|---|
| Boolean |
runtimeID
대상 ID를 가져옵니다. 대상 ID는 런타임에 생성된 정수형 데이터로, 성공적인 구성 이후에만 유효(0이 아닌)합니다. 이 ID는 0이 아니며 전역적으로 증가합니다.
int easyar_ObjectTarget_runtimeID(const easyar_ObjectTarget * This)
int runtimeID()
public int runtimeID()
fun runtimeID(): Int
- (int)runtimeID
public override func runtimeID() -> Int32
public override int runtimeID()
반환 값
| 형식 | 설명 |
|---|---|
| Int32 |
uid
대상 UID 획득. ImageTarget의 UID는 클라우드 인식 알고리즘에서 사용됩니다. 클라우드 인식에 접속하지 않은 상태에서는 JSON 설정에서 이 UID를 지정할 수 있으며, 사용자 코드에서 대상을 구분하는 또 다른 방법으로 활용할 수 있습니다.
void easyar_ObjectTarget_uid(const easyar_ObjectTarget * 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
타겟 이름을 가져옵니다. 이 이름은 json 파일에서 target을 구분하는 데 사용됩니다.
void easyar_ObjectTarget_name(const easyar_ObjectTarget * 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
대상 이름을 설정합니다. 이 작업은 이전 설정이나 서버에서 반환된 데이터를 덮어씁니다.
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)
매개 변수
| 이름 | 형식 | 설명 |
|---|---|---|
| name | String |
반환 값
| 형식 | 설명 |
|---|---|
| Void |
meta
setMetaData로 설정된 메타 데이터를 가져옵니다. 또는 클라우드 인식에서 반환된 target에서 서버가 설정한 메타 데이터를 획득합니다.
void easyar_ObjectTarget_meta(const easyar_ObjectTarget * 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_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)
매개 변수
| 이름 | 형식 | 설명 |
|---|---|---|
| data | String |
반환 값
| 형식 | 설명 |
|---|---|
| Void |