npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2025 – Pkg Stats / Ryan Hefner

yoke-api

v1.1.19

Published

yoke

Downloads

36

Readme

快速使用

使用方式:NPM

下载

npm i yoke-api

引入

import Dimo from 'yoke-api'

使用

使用 ProjectIP:数据中台地址(例如下面的:http://192.168.14.11) URL:http://192.168.14.11/test999/data-center/scene/applyForCases?token=Aqh12juG会返回一个URL

<div id='dimo'></div>
const Instance=new Dimo({dom:'dimo',url:ProjectIP + URL}) 

参数

| 属性 | 是否必须 | 类型 | 描述 | | ---- | -------- | ------ | ---------------- | | dom | 是 | String | dom的ID | | url | 是 | String | 数据中台+场景发布后请求返回的URL |

监听UE返回的消息

Instance.onListen(e=>{console.log(e)})

关闭监听UE返回的消息

Instance.offListen()

虚拟物体类名列表

| 类名 | 类名值 | 类名 | 类名值 | 类名 | 类名值 | | -------------- | ------------- | -------------- | ----------------- | ---------- | ------------------------ | | 图文标签 | ImageDisplay | 点击盒 | ClickBox | 迁徙线1 | TransferLine(Niagara) | | 线条 | CustomLine | 光环特效 | TheOneRing | 迁徙线2 | TransferLine(SplineMesh) | | 3D虚拟物体 | GLTFLoader | 视频标签 | UltraVideoTag | 飞线 | TransferLine(CustomLine) | | 电子围栏 | PolygonArea | 预设版视频标签 | native_videolabel | 地面覆盖图 | ImageFlat | | 3D骨骼动画物体 | skeletal_anim | 高山热力图 | HeatMapNew | 视角投影 | ProjectArea | | 多边形围栏 | RegularPoly | 预设标签 | IconPreset | 广告牌 | ImageBillboard |

虚拟物体相关的方法

以下不是必须的参数如果不写都会自动加上默认值


创建一个虚拟物体

Instance.Spawn(options,CallBack)

参数

| 属性 | 是否必须 | 类型 | 默认值 | 描述 | | --------- | -------- | -------------- | ---------------- | ------------------------------------------------------------ | | id | 是 | String | | 创建的虚拟物体ID | | class | 是 | String | | 创建的虚拟物体的类型(可在虚拟物体类名列表查看具体值) | | name | 否 | String | 默认和id的值相同 | 创建的虚拟物体的name | | tags | 否 | Array | [] | 创建的虚拟物体的tags,用于批量操作控制 | | x | 否 | Number|String | 0 | 创建的虚拟物体处于UE的位置x坐标 | | y | 否 | Number|String | 0 | 创建的虚拟物体处于UE的位置y坐标 | | z | 否 | Number|String | 200 | 创建的虚拟物体处于UE的位置z坐标(高度) | | roll | 否 | Number|String | 0 | 创建的虚拟物体的旋转roll值 | | pitch | 否 | Number|String | 0 | 创建的虚拟物体的旋转pitch值 | | yaw | 否 | Number|String | 0 | 创建的虚拟物体的旋转yaw值 | | size | 否 | Number|String | 1 | 创建的虚拟物体的缩放大小 | | classProp | 是 | Object | | 虚拟物体类型的属性值(可在虚拟物体类名对应的类属性列表查看具体值) | | CallBack | 否 | function | | 回调 |

删除一个虚拟物体

Instance.Destroy(id,CallBack)

参数

| 属性 | 是否必须 | 类型 | 默认值 | 描述 | | -------- | -------- | -------- | ------ | ---------------- | | id | 是 | String | | 创建的虚拟物体ID | | CallBack | 否 | function | | 回调 |

将虚拟物体附属到另一个虚拟物体下

说明:(附属关系下子节点会随父节点移动、显示、隐藏等)

Instance.AttachTo(parent,child,CallBack)

参数

| 属性 | 是否必须 | 类型 | 默认值 | 描述 | | -------- | -------- | -------- | ------ | ------------------------- | | parent | 是 | String | | 被附属物体的 id(父节点) | | child | 是 | String | | 附属物体的 id(子节点) | | CallBack | 否 | function | | 回调 |

移除物体之间的附属关系

Instance.DetachFrom(parent,child,CallBack)

参数

| 属性 | 是否必须 | 类型 | 默认值 | 描述 | | -------- | -------- | -------- | ------ | ------------------------- | | parent | 是 | String | | 被附属物体的 id(父节点) | | child | 是 | String | | 附属物体的 id(子节点) | | CallBack | 否 | function | | 回调 |

获取附属物体的 ID

Instance.GetAttachedObjectID(parent,CallBack)

参数

| 属性 | 是否必须 | 类型 | 默认值 | 描述 | | -------- | -------- | -------- | ------ | ----------------------- | | parent | 是 | String | | 附属物体的 id(父节点) | | CallBack | 否 | function | | 回调 |

获取一个虚拟物体的所有信息

Instance.GetProp(id,CallBack)

参数

| 属性 | 是否必须 | 类型 | 默认值 | 描述 | | -------- | -------- | -------- | ------ | ------------- | | id | 是 | String | | 虚拟物体的 ID | | CallBack | 否 | function | | 回调 |

移动虚拟物体(位置、旋转、缩放)

Instance.SetTransform(options,CallBack)

参数

| 属性 | 是否必须 | 类型 | 默认值 | 描述 | | ------------ | -------- | -------- | ------ | ------------------------------------------------------------ | | id | 是 | String | | 虚拟物体的 ID | | x | 否 | Number | 0 | 虚拟物体的x坐标 | | y | 否 | Number | 0 | 虚拟物体的y坐标 | | z | 否 | Number | 200 | 虚拟物体的z坐标 | | roll | 否 | Number | 0 | 虚拟物体旋转roll值 | | pitch | 否 | Number | 0 | 虚拟物体旋转pitch值 | | yaw | 否 | Number | 0 | 虚拟物体旋转yaw值 | | size | 否 | Number | 1 | 创建的虚拟物体的缩放大小 | | time | 否 | Number | 2 | 设置移动时间,让物体在固定时间内移动到指定位置,单位为秒。 | | follow | 否 | Boolean | false | 移动时虚拟物体的方向是否跟随移动的朝向方向进行旋转 | | rotateOffset | 否 | Number | 0 | 物体移动时相对朝向的偏移角度,即物体朝向移动方向,只有当 rotate_follow 的值为 true 才有意义。 | | CallBack | 否 | function | | 回调 |

设置虚拟物体的显示/隐藏

Instance.SetVisibility(id,state,CallBack)

参数

| 属性 | 是否必须 | 类型 | 默认值 | 描述 | | -------- | -------- | ------------- | ------ | ------------------------------------------- | | id | 是 | String|Array | | 虚拟物体的 ID。设置多个虚拟物体时可传入数组 | | state | 是 | Boolean | | 虚拟物体显示或隐藏 | | CallBack | 否 | function | | 回调 |

批量设置一类虚拟物体的显示

Instance.SetVisibilityOfClass(className,tags,state,CallBack)

参数

| 属性 | 是否必须 | 类型 | 默认值 | 描述 | | ----------- | -------- | -------- | ------ | ------------------------------------------------------------ | | className | 是 | String | | 虚拟物体的类名 | | tags | 是 | Array | [] | 当前虚拟物体类的tags,用于筛选当前类的虚拟物体(当前类的tag中包含此tags就会被显示) | | state | 是 | Boolean | | 虚拟物体显示或隐藏 | | CallBack | 否 | function | | 回调 |

设置一个图层上所有虚拟物体的显示/隐藏

Instance.SetVisibilityOfLayer(status,layer,CallBack)

参数

| 属性 | 是否必须 | 类型 | 默认值 | 描述 | | -------- | -------- | -------- | ------- | --------------------------------------- | | status | 否 | Boolean | false | true/false。显示/隐藏图层上所有虚拟物体 | | layer | 否 | String | default | 虚拟物体的图层 | | CallBack | 否 | function | | 回调 |

设置一个虚拟物体的类属性

Instance.SetClassProp(id,classProp,CallBack)

参数

| 属性 | 是否必须 | 类型 | 默认值 | 描述 | | -------- | -------- | -------- | ------ | ------------------------------------------------------------ | | id | 是 | String | | 虚拟物体的 ID | | classProp | 是 | Object | | 虚拟物体的类属性信息(可在虚拟物体类名对应的类属性列表查看具体值) | | CallBack | 否 | function | | 回调 |

批量设置一类虚拟物体的类属性

Instance.SetClassPropOfClass(className,tags,class_prop,CallBack)

参数

| 属性 | 是否必须 | 类型 | 默认值 | 描述 | | ----------- | -------- | -------- | ------ | ------------------------------------------------------------ | | className | 是 | String | | 虚拟物体的类名 | | tags | 是 | Array | [] | 当前虚拟物体类的tags,用于筛选当前类的虚拟物体(当前类的tag中包含此tags就会被显示) | | classProp | 是 | Object | | 虚拟物体类型的属性值(可在虚拟物体类型属性值查看具体值) | | CallBack | 否 | function | | 回调 |

设置虚拟物体开始从数据中台进行数据更新(例如:热力图、无人机轨迹)

Instance.StartAutoUpdate(id,CallBack)

参数

| 属性 | 是否必须 | 类型 | 默认值 | 描述 | | -------- | -------- | -------- | ------ | ------------- | | id | 是 | String | | 虚拟物体的 ID | | CallBack | 否 | function | | 回调 |

设置虚拟物体停止从数据中台进行数据更新(例如:热力图、无人机轨迹)

Instance.StopAutoUpdate(id,CallBack)

参数

| 属性 | 是否必须 | 类型 | 默认值 | 描述 | | -------- | -------- | -------- | ------ | ------------- | | id | 是 | String | | 虚拟物体的 ID | | CallBack | 否 | function | | 回调 |

视角聚焦到指定虚拟物体

Instance.FocusOn(options,CallBack)

参数

| 属性 | 是否必须 | 类型 | 默认值 | 描述 | | -------- | -------- | -------- | ------ | -------------------------- | | id | 是 | String | | 虚拟物体的 ID | | roll | 否 | Number | 0 | 视角聚焦的roll值 | | pitch | 否 | Number | -45 | 视角聚焦的pitch值 | | yaw | 否 | Number | 0 | 视角聚焦的yaw值 | | distance | 否 | Number | 1000 | 距离视角点中心的距离 | | fov | 否 | Number | 90 | 视角点的视场角范围 | | lock | 否 | Boolean | false | 视角是否锁定为始终跟随物体 | | CallBack | 否 | function | | 回调 |

获取所有虚拟物体的 ID 列表

Instance.GetAllObjectID(CallBack)

参数

| 属性 | 是否必须 | 类型 | 默认值 | 描述 | | -------- | -------- | -------- | ------ | ---- | | CallBack | 否 | function | | 回调 |

获取挂在物体的 ID 列表

Instance.GetAttachedObjectID(parent,CallBack)

参数

| 属性 | 是否必须 | 类型 | 默认值 | 描述 | | -------- | -------- | -------- | ------ | ---- | | parent | 是 | String | | 挂在物体的父级 | | CallBack | 否 | function | | 回调 |

设置UE相关的方法

设置渲染端的分辨率

Instance.SetRes(options,CallBack)

参数

| 属性 | 是否必须 | 类型 | 默认值 | 描述 | | -------- | -------- | -------- | ------ | ---------------- | | w/width | 否 | Number | 1920 | 分辨率,横像素数 | | h/height | 否 | Number | 1080 | 分辨率,纵像素数 | | CallBack | 否 | function | | 回调 |

新版建筑相关的方法

把相机移动到建筑物的接口

Instance.View(options,CallBack)

参数

| 属性 | 是否必须 | 类型 | 默认值 | 描述 | | -------- | -------- | -------- | ------ | ---- | | id | 是 | String | | 建筑物物的 ID | | x | 否 | Number | 0 | 默认以建筑物中心点为目标。这个参数是以建筑物中心点的基础上偏移量。| | y | 否 | Number | 0 | 默认以建筑物中心点为目标。这个参数是以建筑物中心点的基础上偏移量。| | z | 否 | Number | 200 | 默认以建筑物中心点为目标。这个参数是以建筑物中心点的基础上偏移量。| | roll | 否 | Number | 0 | 视角聚焦的roll值 | | pitch | 否 | Number | -45 | 视角聚焦的pitch值 | | yaw | 否 | Number | 0 | 视角聚焦的yaw值 | | distance | 否 | Number | 1000 | 相机离建筑物的距离 | | fov | 否 | Number | 90 | 相机的视场角,度数 | | CallBack | 否 | function | | 回调 |

建筑进入分层展开状态

Instance.Layering(id,CallBack)

参数

| 属性 | 是否必须 | 类型 | 默认值 | 描述 | | -------- | -------- | -------- | ------ | ---- | | id | 是 | String | | 建筑物物的 ID | | CallBack | 否 | function | | 回调 |

把某一楼层抽出

Instance.Pull(options,CallBack)

参数

| 属性 | 是否必须 | 类型 | 默认值 | 描述 | | -------- | -------- | -------- | ------ | ---- | | id | 是 | String | | 建筑物物的 ID | | floor | 否 | Number | 1 | 第几层 | | reset_others | 否 | Number | true | 是否把其他楼层缩回去 | | CallBack | 否 | function | | 回调 |

把某一楼层推回初始状态

Instance.Push(options,CallBack)

参数

| 属性 | 是否必须 | 类型 | 默认值 | 描述 | | -------- | -------- | -------- | ------ | ---- | | id | 是 | String | | 建筑物物的 ID | | floor | 否 | Number | 1 | 第几层 | | CallBack | 否 | function | | 回调 |

把所有楼层都推回初始状态

Instance.PushAll(id,CallBack)

参数

| 属性 | 是否必须 | 类型 | 默认值 | 描述 | | -------- | -------- | -------- | ------ | ---- | | id | 是 | String | | 建筑物物的 ID | | CallBack | 否 | function | | 回调 |

建筑物退出分层状态,把楼合上,回到常规状态。

Instance.BackToNormal(id,CallBack)

参数

| 属性 | 是否必须 | 类型 | 默认值 | 描述 | | -------- | -------- | -------- | ------ | ---- | | id | 是 | String | | 建筑物物的 ID | | CallBack | 否 | function | | 回调 |

设置建筑物是否能被点击触发 SMBD 的交互操作

Instance.SetEnableClick(state,CallBack)

参数

| 属性 | 是否必须 | 类型 | 默认值 | 描述 | | -------- | -------- | -------- | ------ | ---- | | state | 是 | Boolean | | 建筑物物的 ID | | CallBack | 否 | function | | 回调 |

建筑相关的方法

获取所有可分层建筑的ID列表

Instance.GetAllBuildingID(CallBack)

参数

| 属性 | 是否必须 | 类型 | 默认值 | 描述 | | -------- | -------- | -------- | ------ | ---- | | CallBack | 否 | function | | 回调 |

获取该建筑的默认预设视角的参数

Instance.GetDefaultCamera(id,CallBack)

参数

| 属性 | 是否必须 | 类型 | 默认值 | 描述 | | -------- | -------- | -------- | ------ | -------------------------------------------- | | id | 是 | String | | 建筑物的 ID ,根据具体项目提前约定 ID 对照表 | | CallBack | 否 | function | | 回调 |

加载或卸载某一个场景

Instance.Room(options,CallBack)

参数

| 属性 | 是否必须 | 类型 | 默认值 | 描述 | | -------- | -------- | -------- | ------ | -------------------------------------------- | | id | 是 | String | | 需要加载卸载的场景 ID | | load | 否 | Boolean | true | 是否加载场景。是,加载该场景;否,卸载该场景 | | CallBack | 否 | function | | 回调 |

控制某一建筑分层显示

Instance.Split(options,CallBack)

参数

| 属性 | 是否必须 | 类型 | 默认值 | 描述 | | --------- | -------- | -------- | ------ | --------------------------------- | | id | 是 | String | | 需要加载卸载的场景 ID | | floor | 否 | Number | 0 | 显示的分层楼层 ID,0 表示取消分层 | | animation | 否 | Number | 0 | 是否显示动画 | | CallBack | 否 | function | | 回调 |

建筑分层显示并将视角移至建筑

Instance.SplitAndView(options,CallBack)

参数

| 属性 | 是否必须 | 类型 | 默认值 | 描述 | | --------- | -------- | -------- | ------ | ------------------------------------------------------------ | | id | 是 | String | | 需要加载卸载的场景 ID | | floor | 否 | Number | 0 | 显示的分层楼层 ID,0 表示取消分层 | | animation | 否 | Number | 0 | 是否显示动画 | | follow | 否 | Boolean | true | 相机是否移至目标楼层。true 则相机移动到当前楼层的视角。false 则相机移动到当前建筑的视角,视角不随楼层而改变 | | override | 否 | Boolean | false | 是否覆写相机参数。true 则使用 api 输入的 camera 参数。false 则使用预设的视角点。 | | roll | 否 | Number | 0 | 视角的roll值 | | pitch | 否 | Number | -45 | 视角的pitch值 | | yaw | 否 | Number | 0 | 视角的yaw值 | | distance | 否 | Number | 1000 | 距离视角点中心的距离 | | fov | 否 | Number | 90 | 视角点的视场角范围 | | CallBack | 否 | function | | 回调 |

相机设置的相关方法

设置是否开启相机室内模型碰撞检测

Instance.EnableAutoExposure(options,CallBack)

参数

| 属性 | 是否必须 | 类型 | 默认值 | 描述 | | -------- | -------- | -------- | ------ | -------------------- | | camera | 否 | Boolean | false | 是否开启自动曝光功能 | | pawn | 否 | Boolean | false | | | CallBack | 否 | function | | 回调 |

获取当前视角的参数

Instance.GetCamera(CallBack) 使用:获取视角参数保存写在前端项目里面,然后调用movepawn把视角参数传入后,视角就会飞到getacmera相同的视角。

参数

| 属性 | 是否必须 | 类型 | 默认值 | 描述 | | -------- | -------- | -------- | ------ | ---- | | CallBack | 否 | function | | 回调 |

获取鼠标所指向表面的坐标

Instance.GetLocation(CallBack)  使用:获取的是鼠标指针在场景中的位置(所以一般绑定到键盘事件),鼠标移动到获取的位置使用键盘获取位置。

参数

| 属性 | 是否必须 | 类型 | 默认值 | 描述 | | -------- | -------- | -------- | ------ | ---- | | CallBack | 否 | function | | 回调 |

控制视角移动到某个位置

Instance.MovePawn(options,CallBack)

参数 至少给一个参数

| 属性 | 是否必须 | 类型 | 默认值 | 描述 | | ------------- | -------- | -------- | ------ | -------------------- | | x | 否 | Number | 0 | 视角位置x坐标 | | y | 否 | Number | 0 | 视角位置y坐标 | | z | 否 | Number | 200 | 视角位置z坐标 | | roll | 否 | Number | 0 | 视角朝向roll值 | | pitch | 否 | Number | -45 | 视角朝向pitch值 | | yaw | 否 | Number | 0 | 视角朝向yaw值 | | distance | 否 | Number | 1000 | 距离视角点中心的距离 | | fov | 否 | Number | 90 | 相机视场角 | | interpolation | 否 | Boolean | true | 是否平滑到达 | | speed | 否 | Number | 1 | 视角移动速度 | | CallBack | 否 | function | | 回调 |

设置是否启用电影相机模式

Instance.PhotoMode(status,CallBack)

参数

| 属性 | 是否必须 | 类型 | 默认值 | 描述 | | -------- | -------- | -------- | ------ | ---------------- | | status | 是 | Boolean | true | 是否启用电影相机 | | CallBack | 否 | function | | 回调 |

设置相机的光圈

Instance.SetAperture(value,CallBack)

参数

| 属性 | 是否必须 | 类型 | 默认值 | 描述 | | -------- | -------- | -------- | ------ | --------------------------------------------- | | value | 是 | Float | true | 光圈的大小,单位是 f-stop,和真实相机参数一样 | | CallBack | 否 | function | | 回调 |

设置可移动的边界参数

Instance.SetBoundary(options,CallBack)

参数

| 属性 | 是否必须 | 类型 | 默认值 | 描述 | | -------- | -------- | -------- | ------ | --------------- | | minX | 否 | Number | -40000 | 边界x坐标最小值 | | minY | 否 | Number | -40000 | 边界y坐标最小值 | | minZ | 否 | Number | 0 | 边界z坐标最小值 | | maxX | 否 | Number | 40000 | 边界x坐标最大值 | | maxY | 否 | Number | 40000 | 边界y坐标最大值 | | maxZ | 否 | Number | 1000 | 边界z坐标最大值 | | zoom | 否 | Number | 100000 | 缩放最大值 | | CallBack | 否 | function | | 回调 |

设置曝光补偿值

Instance.SetExposureCompensation(value,CallBack)

参数

| 属性 | 是否必须 | 类型 | 默认值 | 描述 | | -------- | -------- | -------- | ------ | ---------------------------------------------------------- | | value | 是 | Float | true | 曝光补偿,数值越大画面越亮,数值越小画面越暗,可以是负数。 | | CallBack | 否 | function | | 回调 |

设置Pawn模型显示/隐藏

Instance.ShowPawn(status,CallBack)

参数

| 属性 | 是否必须 | 类型 | 默认值 | 描述 | | -------- | -------- | -------- | ------ | ----------------- | | status | 是 | Boolean | true | Pawn 模型是否可见 | | CallBack | 否 | function | | 回调 |

高亮物体相关的方法

改变高亮物体的颜色

Instance.Imperio(options,CallBack)

参数

| 属性 | 是否必须 | 类型 | 默认值 | 描述 | | --------- | -------- | -------- | ------ | -------------------------- | | id | 是 | String | | 虚拟物体ID | | r | 否 | Float | 0.0 | Red 红色的色彩通道百分比 | | g | 否 | Float | 1.0 | Green 绿色的色彩通道百分比 | | b | 否 | Float | 1.0 | Blue 蓝色的色彩通道百分比 | | a | 否 | Float | 1.0 | Alpha 的透明度通道百分比 | | intensity | 否 | Float | 1.0 | 高亮物体的发光强度 | | CallBack | 否 | function | | 回调 |

获取所有可高亮物体的ID

Instance.Legilimens(CallBack)

参数

| 属性 | 是否必须 | 类型 | 默认值 | 描述 | | -------- | -------- | -------- | ------ | ---- | | CallBack | 否 | function | | 回调 |

让指定物体高亮显示

Instance.Lumos(id,CallBack)

参数

| 属性 | 是否必须 | 类型 | 默认值 | 描述 | | -------- | -------- | -------- | ------ | ----------------------------- | | id | 是 | String | | 需要高亮显示的可高亮物体的 ID | | CallBack | 否 | function | | 回调 |

让所有物体高亮显示

Instance.LumosMaxima(CallBack)

参数

| 属性 | 是否必须 | 类型 | 默认值 | 描述 | | -------- | -------- | -------- | ------ | ---- | | CallBack | 否 | function | | 回调 |

熄灭高亮物体

Instance.Nox(id,CallBack)

参数

| 属性 | 是否必须 | 类型 | 默认值 | 描述 | | -------- | -------- | -------- | ------ | --------------------- | | id | 是 | String | | 需要熄灭的高亮物体 ID | | CallBack | 否 | function | | 回调 |

投影点相关的方法

设置投影开关

Instance.Control(options,CallBack)

参数

| 属性 | 是否必须 | 类型 | 默认值 | 描述 | | --------- | -------- | -------- | ------ | -------------------- | | uuid | 是 | String | | 投影机 ID | | openVideo | 否 | Boolean | true | 是否开启视频 | | showArea | 否 | Boolean | false | 是否需要显示覆盖区域 | | CallBack | 否 | function | | 回调 |

开启投影视频

Instance.OpenVideos(options,CallBack)

参数

| 属性 | 是否必须 | 类型 | 默认值 | 描述 | | ------------ | -------- | ------------- | ------ | ---------------------------- | | uuids | 是 | Array(string) | | 需要开启视频的投影机 ID 列表 | | closeothers | 否 | Boolean | true | 是否关闭其他全部的视频投影 | | CallBack | 否 | function | | 回调 |

关闭投影视频

Instance.CloseVideos(uuids,CallBack)

参数

| 属性 | 是否必须 | 类型 | 默认值 | 描述 | | -------- | -------- | ------------- | ------ | ---------------------------- | | uuids | 是 | Array(string) | | 需要关闭视频的投影机 ID 列表 | | CallBack | 否 | function | | 回调 |

获取所有投影点的 ID 列表

Instance.GetAllProjectorID(CallBack)

参数

| 属性 | 是否必须 | 类型 | 默认值 | 描述 | | -------- | -------- | -------- | ------ | ---- | | CallBack | 否 | function | | 回调 |

视角点相关的方法

创建一个新的视角点

Instance.CreateViewPonit(options,CallBack)

参数

| 属性 | 是否必须 | 类型 | 默认值 | 描述 | | ------------ | -------- | ------------- | -------- | ------------------------------ | | id | 是 | String | | 视角点 ID | | name | 否 | String | 和ID相同 | 视角点名称 | | coordtype | 否 | String | UE4 | 坐标类型 | | cadmapkey | 否 | String | | | | x | 否 | Number | 0 | 视角x坐标值 | | y | 否 | Number | 0 | 视角y坐标值 | | z | 否 | Number | 0 | 视角z坐标值 | | roll | 否 | Number | 0 | 视角roll坐标值 | | pitch | 否 | Number | -45 | 视角pitch坐标值 | | yaw | 否 | Number | 60 | 视角yaw坐标值 | | fov | 否 | Number | 90 | 视角点的视场角范围 | | distance | 否 | Number | 5000 | 距离视角点中心的距离 | | projectorids | 否 | Array(string) | [] | 视角点需要开启的投影机 ID 列表 | | CallBack | 否 | function | | 回调 |

销毁一个现有视角点

Instance.DestroyViewPoint(viewpointtd,CallBack)

参数

| 属性 | 是否必须 | 类型 | 默认值 | 描述 | | ----------- | -------- | -------- | ------ | --------- | | viewpointtd | 是 | String | | 视角点 ID | | CallBack | 否 | function | | 回调 |

飞行到视角点位置并打开对应的投影机

Instance.FlyTo(viewpointid,CallBack)

参数

| 属性 | 是否必须 | 类型 | 默认值 | 描述 | | ----------- | -------- | -------- | ------ | ----------------------------- | | viewpointid | 否 | String | | 视角点 ID。为空时回到自由视角 | | CallBack | 否 | function | | 回调 |

将当前视口围绕Viewpoint中心进行旋转

Instance.Rotate(options,CallBack)

参数

| 属性 | 是否必须 | 类型 | 默认值 | 描述 | | ---------- | -------- | -------- | ------ | ---------------------- | | angle | 否 | Number | 10 | 每秒旋转角度 | | continuous | 否 | Boolean | false | 是否持续旋转 | | direction | 否 | Boolean | false | true顺时针 false逆时针 | | CallBack | 否 | function | | 回调 |

将当前视口进行上下左右前后平移(相机坐标系)

Instance.Translate(options,CallBack)

参数

| 属性 | 是否必须 | 类型 | 默认值 | 可选值 | 描述 | | --------- | -------- | -------- | ------ | ------------------------------------------------------------ | ------------ | | direction | 否 | Number | Fore | " Fore ",向前;" Back ",向后;" Right ",向右;" Left ",向左;" Up ",向上;" Down ",向下 | 选择平移方向 | | distance | 否 | Boolean | 100 | | 平移距离 | | CallBack | 否 | function | | | 回调 |

创建一个新的视角点序列(简略版

Instance.CreateSequenceByViewPoint(options,CallBack)

参数

| 属性 | 是否必须 | 类型 | 默认值 | 描述 | | ------------ | -------- | ------------- | ------ | ---------------------------- | | id | 是 | String | | 视角点序列 ID | | name | 否 | String | | 视角点序列名称 | | viewpointids | 否 | Array(string) | [] | 视角点序列中的视角点顺序列表 | | CallBack | 否 | function | | 回调 |

创建一个新的视角点序列(详细版)

Instance.CreateSequenceBykeyframes(options,CallBack)

参数

| 属性 | 是否必须 | 类型 | 默认值 | 描述 | | --------- | -------- | -------- | ------ | ------------------ | | id | 是 | String | | 视角点序列 ID | | name | 否 | String | | 视角点序列名称 | | keyframes | 是 | Object | | 详细参数见下方示例 | | CallBack | 否 | function | | 回调 |

"keyframes": [
      {
        "viewpoint_id": "11111",   
        "fly_in_method": 1,        
        "fly_in_time": {
          "phase_1": 2,
          "phase_2": 2,
          "phase_3": 2
        },
        "wait_time": 6
      }
    ]

销毁一个现有视角点序列

Instance.DestroySequence(id,CallBack)

参数

| 属性 | 是否必须 | 类型 | 默认值 | 描述 | | -------- | -------- | -------- | ------ | ------------- | | id | 是 | String | | 视角点序列 ID | | CallBack | 否 | function | | 回调 |

根据预设好的视角点序列,依次切换视角

Instance.Sequence(options,CallBack)

参数

| 属性 | 是否必须 | 类型 | 默认值 | 可选值 | 描述 | | -------- | -------- | -------- | ------ | ----------------------------------------- | ---------------------- | | id | 是 | String | | | 视角点序列 ID | | action | 否 | String | Start | " Start "/" Stop "/" Pause "/" Continue " | 应用于视角点序列的动作 | | CallBack | 否 | function | | | 回调 |

根据预设好的可编辑视角点序列,依次切换视角

说明:TravelerSequence 只能通过场景构建工具创建,无法通过接口创建。我们也建议您的视角点、巡航序列、虚拟物体等均通过场景构建工具制作并保存,接口仅控制启用或关闭

Instance.TravelerSequence(options,CallBack)

参数

| 属性 | 是否必须 | 类型 | 默认值 | 可选值 | 描述 | | -------- | -------- | -------- | ------ | ------------------ | ---------------------- | | id | 是 | String | | | 视角点序列 ID | | action | 否 | String | Start | " Start "/" Stop " | 应用于视角点序列的动作 | | CallBack | 否 | function | | | 回调 |

播放一个的相机行进轨迹

说明:Route 只能通过场景构建工具创建,无法通过接口创建。我们也建议您的视角点、巡航序列、虚拟物体等均通过场景构建工具制作并保存,接口仅控制启用或关闭

Instance.Route(options,CallBack)

参数

| 属性 | 是否必须 | 类型 | 默认值 | 可选值 | 描述 | | -------- | -------- | -------- | ------ | --------------------------- | -------------------- | | id | 是 | String | | | 相机轨迹 ID | | action | 否 | String | Play | " Play "/" Stop "/" Pause " | 应用于相机轨迹的动作 | | CallBack | 否 | function | | | 回调 |

获取所有视角点的 ID 列表

Instance.GetAllViewpointID(CallBack)

参数

| 属性 | 是否必须 | 类型 | 默认值 | 描述 | | -------- | -------- | -------- | ------ | ---- | | CallBack | 否 | function | | 回调 |

获取所有视角点序列的 ID 列表

Instance.GetAllSequenceID(CallBack)

参数

| 属性 | 是否必须 | 类型 | 默认值 | 描述 | | -------- | -------- | -------- | ------ | ---- | | CallBack | 否 | function | | 回调 |

设置视觉风格相关的方法

启动画面滤镜特效

Instance.ActivateFilter(options,CallBack)

参数

| 属性 | 是否必须 | 类型 | 默认值 | 可选值 | 描述 | | -------- | -------- | -------- | -------- | ------------------------------------------------------------ | ------------------------------------------------------------ | | on | 否 | Boolean | true | | 是否开启滤镜 | | style | 否 | String | DarkBlue | " DarkBlue "/" WhiteMesh "/" Outline "/" LUTBlue "/" LUTYellow " | DarkBlue ,暗蓝滤镜;WhiteMesh ,白色滤镜;Outline ,轮廓线滤镜。LUTBlue ,蓝色滤镜。LUTYellow ,黄色滤镜。 | | CallBack | 否 | function | | | 回调 |

设置材质参数中的标量参数

说明:例如控制材质颜色饱和度,变成白模等功能

Instance.SetScalarParameter(options,CallBack)

参数

| 属性 | 是否必须 | 类型 | 默认值 | 描述 | | -------- | -------- | -------- | ------------- | -------------- | | name | 否 | String | WhiteMeshLerp | 标量参数的名称 | | value | 否 | Float | 1.0 | 标量参数的值 | | CallBack | 否 | function | | 回调 |

设置材质参数中的矢量参数。例如控制材质颜色,方向等功能

Instance.SetVectorParameter(options,CallBack)

参数

| 属性 | 是否必须 | 类型 | 默认值 | 描述 | | -------- | -------- | -------- | ----------- | -------------- | | name | 否 | String | BoxLocation | 矢量参数的名称 | | x | 否 | Number | 0.0 | 矢量参数的x值 | | y | 否 | Number | 0.0 | 矢量参数的y值 | | z | 否 | Float | 0.0 | 矢量参数的z值 | | CallBack | 否 | function | | |

设置天气相关的方法

设置场景中的虚拟天气状态为预设好的天气

Instance.ApplyPreset(preset,CallBack)

参数

| 属性 | 是否必须 | 类型 | 默认值 | 可选值 | 描述 | | -------- | -------- | -------- | ---------- | ------------------------------------------------------------ | ------------------------------------ | | preset | 否 | String | ClearSkies | " ClearSkies "晴天" PartlyCloudy "晴天多云" Cloudy "阴天" Overcast "阴天" Foggy "雾天" LightRain "小雨" Rain "雨天"ThunderStorm"雷雨" Sleet "雨夹雪" LightSnow "小雪" Snow "雪天" Blizzard "暴风雪 | 天气预设,共有 12 种天气预设可供选择 | | CallBack | 否 | function | | | 回调 |

设置场景中的虚拟天气状态

说明:控制天气状态等功能

Instance.SetProp(options,CallBack)

参数

| 属性 | 是否必须 | 类型 | 默认值 | 描述 | | --------------- | -------- | -------- | ------ | ------------------------------------------------------------ | | weatherprogress | 否 | Number | 0.0 | 控制云层覆盖量,0.0 表示没有云,数值越大云量越多。当云覆盖量到达一定程度时会下雨(雪),云量越多降雨(雪)量越大。注:本参数可以控制降雨量或降雪量,但具体是降雨还是降雪由季节参数( season_progress )控制。 | | seasonprogress | 否 | Number | 0.0 | 控制下雪或者下雨,0.0 只下雨;1.0 只下雪;0.0 到 1.0 范围内为不同比例的雨夹雪。注:本参数控制降雨和降雪的比例,而是否有降雨/雪由云层覆盖量参数( weather_progress )控制。 | | time | 否 | Number | 14 | 天气对应的时间,24 小时制。 | | CallBack | 否 | function | | 回调 |

开始天气实时更新

Instance.StartUpdate(CallBack)

参数

| 属性 | 是否必须 | 类型 | 默认值 | 描述 | | -------- | -------- | -------- | ------ | ---- | | CallBack | 否 | function | | 回调 |

结束天气实时更新

Instance.StopUpdate(CallBack)

参数

| 属性 | 是否必须 | 类型 | 默认值 | 可选值 | 描述 | | -------- | -------- | -------- | ------ | ------ | ---- | | CallBack | 否 | function | | | 回调 |

设置天空模式

说明:可以选择写实天空模式,模拟真实物理大气效果;也可以选择非写实天空模式,使用 HDRI 贴图来模拟各种风格的光照。

Instance.SetSkyMode(mode,CallBack)

参数

| 属性 | 是否必须 | 类型 | 默认值 | 可选值 | 描述 | | -------- | -------- | -------- | --------- | ------------------------------------------------------------ | ------------ | | mode | 否 | String | Realistic | Realistic 写实天空模式,模拟真实物理大气,根据不同天气和时间,来模拟大气散射的光照NonRealistic 非写实天空模式,使用 HDRI 贴图来模拟环境光照 | 选择天空模式 | | CallBack | 否 | function | | | 回调 |

设置天空光的贴图

说明:设置天空光的贴图,来实现一些风格化的光照效果。需要使用 SetSkyMode 接口把天空模式设置为 NonRealistic 后,才能设置天空光贴图。可以切换成暗调的风格化。

Instance.SetSkyLightTexture(options,CallBack)

参数

| 属性 | 是否必须 | 类型 | 默认值 | 描述 | | --------- | -------- | -------- | ------ | -------------------- | | cubemap | 否 | String | Sunset | 预设 HDRI 贴图的名称 | | angle | 否 | Float | 180.0 | 环境光贴图的方向 | | intensity | 否 | Float | 10000 | 光照强度 | | r | 否 | Float | 1.0 | 光照染色r | | g | 否 | Float | 1.0 | 光照染色g | | b | 否 | Float | 1.0 | 光照染色b | | a | 否 | Float | 1.0 | 光照染色a | | CallBack | 否 | function | | 回调 |

设置场景中的时间

Instance.SetTime(time,CallBack)

参数

| 属性 | 是否必须 | 类型 | 默认值 | 描述 | | -------- | -------- | -------- | ------ | ---------------------------------------------- | | time | 否 | Float | 12.5 | 天气对应的时间,24 小时制。例:14.5 为 2:30 pm | | CallBack | 否 | function | | 回调 |

定制化接口

Instance.postMessage(message,(e)=>{})

关于CallBack回调信息描述

| status | message | 描述 | | ------ | ------------------------------ | ----------------- | | 0 | OK | 正确执行完成 | | -1000 | Json parse error. | JSON 解析错误 | | -1001 | Compulsory json key not found. | JSON 缺少必填字段 |

其他用法

链式调用

示例:隐藏id分别为a和b的虚拟物体,然后显示id为c的虚拟物体

Instance.SetVisibility('a',false).SetVisibility('b',false).SetVisibility('c',true)

查看是否有控制权

Instance.checkControl((status,msg)=>{
console.log(status,msg)
})

回调返回

| 属性 | 描述 | | ------ | -------------------------------------------------- | | status | 是否有控制权,true有,false无 | | msg | 控制权具体信息。例如:有几人在线,当前控制权所属ip |

虚拟物体类名对应的类属性列表

说明:列表可在以下链接中查看

https://alidocs.dingtalk.com/i/p/3ZxX8RrPx7216G7d/docs/2Amq4vjg89glYB59fbRygkeyV3kdP0wQ?dontjump=true&utm_medium=dingdoc_doc_plugin_url&utm_source=dingdoc_doc