快速开始
本指南将帮助你快速上手 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()