Tango Examples C 项目教程

Tango Examples C 项目教程

tango-examples-cJNI example projects for Project Tango [deprecated] C-API项目地址:https://gitcode.com/gh_mirrors/ta/tango-examples-c

1. 项目的目录结构及介绍

Tango Examples C 项目的目录结构如下:

tango-examples-c/
├── CMakeLists.txt
├── LICENSE
├── README.md
├── android.toolchain.cmake
├── assets/
│   └── models/
├── build/
├── build-tools/
├── cpp/
│   ├── augmented_reality_example/
│   ├── marker_detection_example/
│   ├── mesh_builder_example/
│   ├── motion_tracking_example/
│   ├── plane_fitting_example/
│   └── point_cloud_example/
├── jni/
│   ├── Android.mk
│   ├── Application.mk
│   ├── main/
│   └── util/
└── third-party/

目录介绍

  • CMakeLists.txt: 用于构建项目的 CMake 配置文件。
  • LICENSE: 项目的许可证文件。
  • README.md: 项目的说明文档。
  • android.toolchain.cmake: 用于 Android 交叉编译的工具链文件。
  • assets/: 包含项目所需的资源文件,如 3D 模型。
  • build/: 构建生成的文件存放目录。
  • build-tools/: 构建工具目录。
  • cpp/: 包含多个示例项目,每个子目录对应一个不同的 Tango 技术应用示例。
  • jni/: 包含 JNI 相关的文件,用于与 Java 层交互。
  • third-party/: 第三方库目录。

2. 项目的启动文件介绍

项目的启动文件主要位于 cpp/ 目录下的各个示例项目中。每个示例项目都有一个主要的启动文件,例如:

  • cpp/augmented_reality_example/main.cpp: 增强现实示例的启动文件。
  • cpp/marker_detection_example/main.cpp: 标记检测示例的启动文件。
  • cpp/mesh_builder_example/main.cpp: 网格构建示例的启动文件。
  • cpp/motion_tracking_example/main.cpp: 运动跟踪示例的启动文件。
  • cpp/plane_fitting_example/main.cpp: 平面拟合示例的启动文件。
  • cpp/point_cloud_example/main.cpp: 点云示例的启动文件。

启动文件介绍

每个启动文件主要负责初始化 Tango 设备、设置回调函数、启动主循环等操作。以下是 cpp/augmented_reality_example/main.cpp 的部分代码示例:

#include <tango_client_api.h>
#include <tango_support_api.h>

int main(int argc, char* argv[]) {
    // 初始化 Tango 设备
    TangoErrorType err = TangoService_initialize(argc, argv);
    if (err != TANGO_SUCCESS) {
        return -1;
    }

    // 设置回调函数
    TangoService_connectOnFrameAvailable(TANGO_CAMERA_COLOR, this, onFrameAvailable);

    // 启动主循环
    while (true) {
        // 处理帧数据
    }

    // 清理资源
    TangoService_disconnect();
    return 0;
}

3. 项目的配置文件介绍

项目的配置文件主要位于 jni/ 目录下,包括 Android.mkApplication.mk 文件。

Android.mk

Android.mk 文件用于配置 Android NDK 构建系统,定义模块、源文件、库依赖等。以下是部分代码示例:

LOCAL_PATH := $(call my-dir)

include $(CLEAR_VARS)

LOCAL_MODULE := augmented_reality_example
LOCAL_SRC_FILES := main.cpp
LOCAL_LDLIBS := -llog -landroid -lEGL -lGLESv2
LOCAL_STATIC_LIBRARIES := tango_client_api tango_support_api

include $(BUILD_SHARED_LIBRARY)

Application.mk

Application.mk 文件用于配置应用程序的构建参数,如 ABI、STL 类型等。以下是部分代码示例:

APP_AB

tango-examples-cJNI example projects for Project Tango [deprecated] C-API项目地址:https://gitcode.com/gh_mirrors/ta/tango-examples-c

  • 8
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

罗琰锴

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值