云服务器内容精选

  • 环境要求 已安装配置NodeJS环境。 已安装代码编辑器,如Visual Studio Code。 已安装Web服务器,如http-server、VSCode插件live-server、Tomcat等。 Windows系统电脑已安装Chrome浏览器或基于Chromium内核的浏览器(例如Edge);Mac系统电脑已安装Safari浏览器。 移动设备已配置后置摄像头、陀螺仪、加速度传感器、GPS芯片等器件。 移动设备已安装支持WebRTC浏览器,如Chrome、Safari、华为浏览器等。
  • 接口列表 表1 其他接口列表 接口 描述 参数名 参数类型 参数说明 返回值 requestNavi 请求导航路径。 utmCode string 当前utm区域。 void from number[3] 导航出发点utm坐标。 to number[3] 导航目的地utm坐标。 policy number 路线选择策略。 1:最短距离 2:电梯优先 3:扶梯优先 -2:不坐电梯 -3:不走扶梯 callback Function 回调函数,附带导航路径点信息。 getVersion 获取SDK版本号。 - - - string
  • 接口调用示例 请求导航路径 const utmCode = "51N"; const from: number[] = [355814.9895, 3457384.328, 13.599688]; const to: number[] = [355761.8694, 3457201.475, 13.644748]; const policy: number = 0; XRClient.requestNavi(utmCode, from, to, policy, this.RequestNaviCallBack);//返回从出发地到目的地的路径 获取SDK版本号 XRClient.getVersion();
  • 快速开始 使用微信 开发者工具 创建小程序工程,导入SDK。 本文档使用的微信开发者工具版本为Nightly 1.06.2411282。 使用微信号登录微信开发者工具。 新建微信小程序工程。 单击“新建项目”,进入“创建小程序”页面。 图1 创建小程序 在“项目名称”文本框中填写项目名称。 “目录”选择项目存放的路径。 “AppID”选择“测试号”。 “后端服务”选择“不使用云服务”。 “开发模式”选择“小程序”。 “模板选择”选“不使用模板”。 单击“创建”,完成小程序工程创建。创建完成后,工程目录如图2。 图2 目录名称 新建文件并导入SDK。 在工具的资源管理器,单击右键,选择“新建文件”,新建文件“app.json”,并在app.json中配置页面(pages),代码如下: { "pages": [ "pages/index/index" ] } 单击右键,选择“新建文件”,新建文件“app.js”。 按Ctrl+S组合键,保存并编译,工具会自动生成pages文件夹及文件夹下的文件。 下载并解压CyberverseXRLightSDK软件包。 打开工程目录,将解压后得到的build文件夹复制到pages同级目录。 图3 导入SDK后目录 调用SDK,获取版本号。 在“index.js”文件的第一行导入XRClient。 import { XRClient } from "../../build/XRClient"; 在“index.js”文件的onLoad方法里打印SDK版本号。 onLoad(options) { console.log(XRClient.getVersion()) }, 真机调试,验证结果。 自动调试前,确保移动端设备的微信在前台运行,且与开发者工具登录的是同一个账号。 在微信开发者工具中,单击“真机调试”。 根据移动端设备情况选择“启动 Android 端自动真机调试”或 “启动 iOS 端自动真机调试”。 XRLightSDK是基于XRFrame方案的AR应用,不支持PC端调试。 单击“编译并自动调试”,弹出“真机调试”窗口。 图4 真机调试 在“Console”页签下,查看输出的内容,如果打印了SDK版本号信息,说明引入SDK成功。 图5 查看SDK版本信息 父主题: XRLightSDK使用手册
  • 开发概述 HTSDK是接入KooMap AR地图运行服务的端侧SDK,助力于快速构建真实和虚拟融合世界。HTFoundation是适配HTSDK的示例代码,供用户在Unity3D中开发业务。 HTFoundation示例实现了真实世界构建、世界位姿定位和跟踪、虚实世界呈现。基于HTFoundation示例,用户可构建虚拟世界,包括虚拟对象设计、行为设计实现和业务逻辑开发。 图1 工作原理 父主题: HTSDK使用手册
  • WebARSDK简介 WebARSDK是一款轻量化JS-SDK,支持租户通过SDK快速集成和使用KooMap AR地图运行服务,开放能力的内存增加不大于3MB,运行时不依赖于Native App,可通过主流Web浏览器平台、主流终端设备的App内嵌WebView,实现WebAR体验。 WebARSDK提供的API,可以将用户、空间及数字内容连接在一起 ,达到厘米级的定位能力和1度以内的定姿能力,实现随时随地高精度的空间计算。在AR地图覆盖区域,用户可进行3D实景步行导引,无需担心GPS信号弱的环境。
  • 调试选项 loglevel:UPDATE|INFO|WARNING|ASSERT|EXCEPTION|ERROR|NONE 日志级别左边包含右边的日志信息,即UPDATE级别会打印所有日志信息,使用该字段会打印HTDebug的日志,并写日志到此文件的上一级文件目录。NONE表示不保存log。 debugger_ctrl_switch:ON|OFF 是否在日志中显示调试面板,只对HTAppUIType中mNativeAppIds包含的应用包名有效。 fixed_location_switch:ON|OFF 是否使用自定义的固定位置。 longitude 经度,填写固定位置经纬的值,只在“fixed_location_switch”为“ON”时有效。 latitude 纬度,填写固定位置纬度的值,只在“fixed_location_switch”为“ON”时有效。
  • API列表 WebARSDK封装类名为“hwar”,所有API均直接通过类“hwar”来调用,无需实例化。 本章节所指的GPS坐标系为WGS84坐标系。 utmCode指UTM(UNIVERSAL TRANSVERSE MERCARTOR GRID SYSTEM,通用横墨卡托格网系统)投影带号。 图像流约束:宽:高=480:640,您需根据实际情况自行适配设备屏幕尺寸。 参数类型使用了TypeScript语言的声明规范。 视觉定位 空间位置追踪与渲染 导航 事件管理 SDK内部派发事件 父主题: WebARSDK使用手册
  • 坐标系转换 SDK提供了UTM坐标与渲染引擎(如Three.js、LayaAir)坐标之间的转换方法。 // UTM坐标转成渲染坐标 let vecInit = hwar.utm2Render([utm.x, utm.y, utm.z]); // 渲染坐标转成UTM坐标 let renderPosUtm = hwar.render2Utm([render.x, render.y, render.z]);
  • 无法进行视觉定位原因排查 如果您无法进行视觉定位,建议您排查以下问题: 检查是否竖屏正向手持设备。 侦听事件“LANDSCAPE_BY_ROLL”检查当前屏幕是否竖屏。 侦听事件“ORIENTATION_NORMAL”检查屏幕正向状态。 验证视觉定位效果时,您需竖屏正向手持设备扫描周边环境。 检查定位区域是否在地图服务范围内。 按“F12”打开DevTools,在“Network”页签中查看“vps”的状态码。如果状态码为“400”,请在“Response”页签中查看“error_msg”内容,如显示“access denied, out of your service zone”,则表示位置不在您的地图服务范围。
  • 总体开发思路 使用WebARSDK开发移动端应用的工作流程如图1所示。 图1 工作流程 准备工作。 下载WebARSDK、收集AK/SK信息、开通关联服务。 创建H5移动端工程。 使用原生或者流行框架(如Vue、React)创建H5移动端工程。 引入WebARSDK文件。 下载、解压WebARSDK包,并将下载WebARSDK包放入工程目录,通过外部引入脚本的方式引入WebARSDK文件。 验证租户身份信息。 通过hwar.setAKSK方法将AK/SK传入SDK,验证租户身份信息。 开启AR会话。 获取图像及传感器数据,初始化SLAM,准备相关环境。 实现AR导航和渲染3D内容。 依靠视觉定位,获取当前设备位置,以及请求导航路径,实现空间位置追踪导航;开发者基于SDK输出的图像数据、相机矩阵、路径信息,实现3D数字内容渲染。 父主题: WebARSDK使用手册
  • 在项目内上传数据 登录KooMap管理控制台。 在左侧导航栏的“AR地图”下选择“项目管理”。 在“项目管理”页面,单击项目名称(蓝色字体),进入“项目详情”页面。 单击“上传数据”,根据表1填写待上传数据的相关信息。 表1 上传数据配置参数 配置项 配置说明 数据名称 必填项。 输入数据名称。 名称不可重复。 数据类型 必选项。 目前仅支持“Insta360”。 上传数据 单击“上传文件夹”上传本地的全景视频。 如上传数据错误,可删除重新上传。 数据描述 选填项。 输入待上传数据的相关描述。 单击“确定”,开始上传数据。 您还可以对数据上传任务做如下操作: 查看全部:单击此按钮查看当前任务下全部文件上传进度。 查看激活的:单击此按钮查看当前任务下正在上传的文件上传进度。 继续上传:状态为“失败”时(断网、异常关机、刷新或重启浏览器等情况导致),单击此按钮重新选择数据上传。 移除:单击此按钮移除当前上传任务/文件。 取消:单击此按钮取消文件上传。 数据上传完成后,自动进入预处理阶段。 预处理完成后,“数据状态”为“预处理成功”。
  • 创建用户并授权使用KooMap 您可以使用 统一身份认证 服务(Identity and Access Management,简称 IAM )对您所拥有的KooMap进行精细的权限管理。通过IAM,您可以: 根据企业的业务组织,在您的华为账号中,给企业中不同职能部门的员工创建IAM用户,让员工拥有唯一安全凭证,并使用KooMap。 将KooMap资源委托给更专业、高效的其他华为账号或者云服务,这些账号或者云服务可以根据权限进行代运维。 如果华为账号已经能满足您的要求,不需要创建独立的IAM用户,您可以跳过本章节,不影响您使用KooMap的其它功能。本章节为您介绍对用户授权的方法,操作流程如图1所示。 目前,KooMap只支持KooMap FullAccess策略,授予该策略的用户拥有KooMap的所有权限。 图1 给用户授权KooMap权限流程 用户授权KooMap权限步骤如下: 创建用户组并授权。 在IAM控制台创建用户组,并授予KooMap的操作员权限“KooMap FullAccess”。 创建用户并加入用户组。 在IAM控制台创建用户,并将其加入1中创建的用户组。 用户登录并验证权限。 新创建的用户登录控制台,如能进入KooMap首页,则表示“KooMap FullAccess”权限已生效。
  • 套餐包到期 购买后,在计费周期内正常使用套餐包,此阶段为有效期;套餐包到期而未续费时,将陆续进入宽限期和保留期。 图2 套餐包生命周期 到期预警 套餐包到期前第7天内,系统将向用户推送到期预警消息。预警消息将通过邮件、短信和站内信的方式通知到华为账号的创建者。 到期影响 当您的套餐包资源到期未续费,首先会进入宽限期,宽限期内您可以正常访问该套餐包资源。 如果您在宽限期内仍未续费,那么就会进入保留期,您将无法对处于保留期的资源执行任何操作,但该资源中的数据仍予以保留。 如果您在保留期到期后仍未续费,那么相应的资源将被释放,资源的内容将被删除,且无法恢复。 宽限期和保留期的详细介绍,请参见宽限期保留期。 华为云根据客户等级定义了不同客户的宽限期和保留期时长。
  • 原始数据 AR地图生产服务的全景建图: 输入数据为Insta360 ONE R全景相机(30fps,5.7k)采集的全景视频,视频格式为.insv,单个视频的采集时间不超过15分钟。 视频文件中需包含GPS坐标信息,坐标信息为WGS84地理坐标系下的经纬度坐标。 视频成像清晰,色彩层次丰富,色差适中。应在室外白天光线充足或室内灯光明亮的环境下采集,无雨雪风暴沙尘等天气,避免在有大量游客及行人的状态下采集;室内场景要求纹理丰富,避免存在仅能观测到白墙或玻璃的区域,避免动态展板播放视频或滚动图片等变化场景;室外场景避免大量积水和建筑物被树木大面积遮挡的场景。 建议平行规划多条采集路线,室内间隔1米,室外间隔2米。使用市面上现有主流地图软件的划线测距功能,提前规划好采集轨迹并记录实际的采集路线。