Skip to content

快速开始

本指南将帮助你快速上手 Sightp AR SDK,在 5 分钟内完成基础集成。

环境要求

依赖版本要求
Node.js≥ 16.0.0
pnpm≥ 7.0.0
TypeScript≥ 4.5.0

安装

bash
pnpm add @sightp/tiny-allinone

基础集成

1. 初始化导航系统

typescript
import { initNavSystem } from '@sightp/tiny-allinone'

// 配置参数
const setting = {
  id: 'your-map-id',
  requestRoute: async (params) => {
    // 调用路算服务获取路线
    const response = await fetch('/api/route', {
      method: 'POST',
      body: JSON.stringify(params)
    })
    return response.json()
  },
  routeWidth: 6,
  arriveRadious: 5,
  drawPathLength: -1,
}

// 初始化
const navManager = initNavSystem(pc, app, setting)

2. 开始导航

typescript
// 定义目标点
const target = {
  id: 'target-1',
  x: 100,
  y: 0,
  z: 200,
}

// 开始导航
navManager.startNav(target)

// 监听导航事件
navManager.on('nav_arrive', (data) => {
  console.log('到达目的地')
})

3. 取消导航

typescript
navManager.cancelNav()

完整示例

typescript
import { initNavSystem } from '@sightp/tiny-allinone'

async function main() {
  // 配置
  const setting = {
    id: 'demo-map',
    requestRoute: async (params) => {
      // 模拟路算服务
      return {
        route: [
          { x: 0, y: 0, z: 0 },
          { x: 10, y: 0, z: 10 },
          { x: 20, y: 0, z: 20 },
        ]
      }
    },
  }

  // 初始化
  const navManager = initNavSystem(pc, app, setting)

  // 导航事件
  navManager.on('nav_start', () => console.log('导航开始'))
  navManager.on('nav_arrive', () => console.log('到达'))
  navManager.on('nav_deviate', () => console.log('偏离路线'))

  // 开始导航
  navManager.startNav({ id: 'target', x: 20, y: 0, z: 20 })
}

main()

下一步

Released under the MIT License.