1.0.1 • Published 2 years ago

uno-info-sdk v1.0.1

Weekly downloads
-
License
-
Repository
-
Last release
2 years ago

Installation

npm install uno-info-sdk --save

Usage

import { IndustrySDK } from 'uno-info-sdk';

const industrysdk = new IndustrySDK({
  service: 'wss://pre-citybrain-open.aliyun.com/app/space-ws/ws',
  registerData: {
    name: "注册消息B",
    group: "industry_room"
  },
  source: 'web',
  target: 'web'
});

const { camera } = industrysdk;

sdk.wsClient.on('load', () => {
  camera.focus.toTarget({
    camera: [26957,52297,63267],
    lookat: [55849,60942,67897],
    layer: "Impedit hic aliquam omnis molestias aspernatur.",
    target: "Asperiores et unde dolor rerum rem est aperiam."
  })
})

sdk.listener('camera.focus.toTarget', (data) => {
  console.log(data)
})

Options

属性名说明必填类型默认值
service需要连接的服务地址String-
source当前客户端idString-
target消息发送目标端Array-
roomExclude当前广播需要过滤的端, target优先级高Array-
registerData注册内容{name: string, group: string, hasCbMsg}RegisterData-
extraWswebsocket扩展配置Options{}

Instance API

属性名说明类型备注
listener按event和action监听消息内容返回(eventName: string, callback: (message: object) => void) => voideventName规则: sdk_${event}.${action},'.action'非必填。Default Events
registerEvent注册自定义事件(eventName: string, parser: (data) => data)) => {}eventName规则: sdk_${event}.${action},'.action'非必填
send发送消息(event: string, message: object) => {}-
updateOptRetry更新配置后重新初始化(opts: Options) => {}-
destroy销毁函数Function-

RegisterData

属性名说明必填类型默认值
name发送端名称string-
group消息通道房间名称string-
hasCbMsg注册消息是否需要广播boolean-
disconnectTime长时间不发送消息时,服务端主动断开服务需要的时间number60000

SDK json结构

[
  {
    "name": "对象查看", // dk大类名称
    "desc": "", // sdk大类描述
    "entity": "camera", // sdk作用实体
    "category": "sequence", // sdk所属分类
    "actionCode": "focus", // sdk的action
    "params": [{ // sdk参数配置
      "name": "camera", // 参数名称
      "type": "[number, number, number]", // 参数类型,typescript语法
      "require": true, // 参数是否必填
      "desc": "" // 参数描述
    }, {
      "name": "lookat",
      "type": "[number, number, number]",
      "require": true,
      "desc": ""
    }, {
      "name": "layer",
      "type": "string",
      "require": false,
      "desc": ""
    }, {
      "name": "target",
      "type": "string",
      "require": false,
      "desc": ""
    }],
    "children": {
      "toTarget": { // sdk子类code
        "name": "对象特写", // sdk子类名称
        "fields": [ // sdk子类参数字段,取大类的params中的key
          "camera", //name是这个字符串的参数,配置同大类
          "lookat",
          {  "target": true },, // name是这个对象的key的参数,配置同大类,但是require以当前的value为准
          { "layer": true }
        ],
        "desc": ""
      },
      "fixed": {
        "name": "定点特写",
        "fields": ["camera", "lookat"],
        "desc": ""
      }
    }
  }
]

SDK文档v1.0.0

调用方式:sdkName({ param1, param2, ... })

1、对象查看镜头

sdkName: camera.focus

描述:调用系统镜头对单一指定对象或指定位置进行查看

字段名字段类型是否必须描述
cameranumber, number, number镜头的相机参数
lookatnumber, number, number镜头的视点参数
layerstring对象的图层名
targetstring对象ID

1.1、对象特写

sdkName: camera.focus.toTarget

描述:调用镜头实现对任意位置的定点特写。如:对隧道口、匝道口做特写

字段名字段类型是否必须描述
cameranumber, number, number镜头的相机参数
lookatnumber, number, number镜头的视点参数
targetstring对象ID
layerstring对象的图层名

1.2、定点特写

sdkName: camera.focus.fixed

描述:调用系统镜头实现对一个指定静态对象ID的定点特写,被特写对象会有外轮廓高亮。如:实现对某个杆子或路侧设备的特写

字段名字段类型是否必须描述
cameranumber, number, number镜头的相机参数
lookatnumber, number, number镜头的视点参数

2、多对象查看镜头

sdkName: camera.show

描述:调用系统镜头对多个指定对象进行查看

字段名字段类型是否必须描述
layerstring对象的图层名
targetstring对象ID数组

3、跟踪镜头

sdkName: camera.track

描述:调用系统镜头实现对一个指定动态对象或不指定ID的任一对象实施动态跟踪,被跟踪对象会有外轮廓高亮

字段名字段类型是否必须描述
layerstring对象的图层名
targetstring对象ID
target_typestring对象类型
continuouslyboolean是否连续跟踪,即跟丢了再选同类的下一个对象
locationnumber,number,number被跟踪对象的位置: 三维场景只加载当前范围内的车辆,如果被跟踪对象不在当前范围就找不到该对象,需要先让三维场景跳转到被跟踪对象的位置(location参数),加载新范围内的车辆再进行跟踪
cameraModestring跟踪视角("Car"(车内), "Drone"(无人机跟车), "Flight"(高空俯视))
cameraDistancenumber,number镜头相对被跟踪对象的位置,默认值3,2

3.1、指定对象(ID)跟踪

sdkName: camera.track.toTarget

描述:调用系统镜头实现对一个指定动态对象实施动态跟踪

字段名字段类型是否必须描述
layerstring对象的图层名
targetstring对象ID
continuouslyboolean是否连续跟踪,即跟丢了再选同类的下一个对象
locationnumber,number,number被跟踪对象的位置: 三维场景只加载当前范围内的车辆,如果被跟踪对象不在当前范围就找不到该对象,需要先让三维场景跳转到被跟踪对象的位置(location参数),加载新范围内的车辆再进行跟踪
cameraModestring跟踪视角("Car"(车内), "Drone"(无人机跟车), "Flight"(高空俯视))
cameraDistancenumber,number镜头相对被跟踪对象的位置,默认值3,2

3.2、不指定对象(ID)跟踪

sdkName: camera.track.noTarget

描述:调用系统镜头实现对不指定ID的任一对象实施动态跟踪

字段名字段类型是否必须描述
layerstring对象的图层名
continuouslyboolean是否连续跟踪,即跟丢了再选同类的下一个对象
target_typestring对象类型
cameraModestring跟踪视角("Car"(车内), "Drone"(无人机跟车), "Flight"(高空俯视))
cameraDistancenumber,number镜头相对被跟踪对象的位置,默认值3,2

3.3、释放跟踪镜头

sdkName: camera.track.release

描述:取消跟踪

字段名字段类型是否必须描述
layerstring对象的图层名
targetstring对象ID

4、预设镜头

sdkName: camera.call

描述:调用预先编排好的一个镜头序列

字段名字段类型是否必须描述
sequencestring预设镜头的数组

5、释放镜头

sdkName: camera.release

描述:解锁原来的任何镜头

字段名字段类型是否必须描述
cameraOffsetnumber,number,number释放后镜头相对最后位置的位移

6、切换跟踪视角

sdkName: camera.switchMode

描述:在对象跟踪镜头下切换跟踪视角

字段名字段类型是否必须描述
cameraModestring跟踪视角("Car"(车内), "Drone"(无人机跟车), "Flight"(高空俯视))

7、隐藏三维图层

sdkName: layer.hide

描述:隐藏三维图层

字段名字段类型是否必须描述
layerstring图层名

8、显示三维图层

sdkName: layer.show

描述:显示三维图层

字段名字段类型是否必须描述
layerstring图层名

9、隐藏面板图层

sdkName: billboard.hide

描述:隐藏面板图层

字段名字段类型是否必须描述
layerstring图层名

10、显示面板图层

sdkName: billboard.show

描述:显示面板图层

字段名字段类型是否必须描述
layerstring图层名

11、切换气象

sdkName: climate.setup

描述:切换场景中的天气、日照等状态

字段名字段类型是否必须描述
weatherstring气象状态数组(foggy、rainy、snowy),数组为空即为晴天
sunlightstring日夜切换,day/night

12、恢复气象

sdkName: climate.reset

描述:恢复场景中的天气和日照状态

字段名字段类型是否必须描述

13、切换数据环境

sdkName: env.changeEnv

描述:切换场景中的数据环境,即车辆、事件等数据来源从实时模式切换为历史模式或仿真模式

字段名字段类型是否必须描述
envstring数据环境名称
isPlayingboolean是否播放

14、指定时间播放

sdkName: env.play

描述:在非实时环境下实现从指定日期指定时间开始播放

字段名字段类型是否必须描述
playTimestring开始播放的时间
isPlayingtrue播放
uniqueIdstring一次播放的ID
envstring数据环境名称(playback历史数据, simulation仿真数据, release实时数据)

15、暂停播放

sdkName: env.pause

描述:在非实时环境下实现暂停播放

字段名字段类型是否必须描述
playTimestring停止播放的时间
isPlayingfalse暂停播放
uniqueIdstring一次播放的ID
envstring数据环境名称(playback历史数据, simulation仿真数据, release实时数据)

16、请求地图同步

sdkName: map.request

描述:web端请求UE端发送地图位置信息,用于一些需要三维场景跳转到新位置之后再响应的web消息

字段名字段类型是否必须描述
entitystring被同步对象为地图参数

17、监听地图同状态

sdkName: camera.update

描述:UE端返回web端请求的地图位置信息(响应web的请求地图同步)

字段名字段类型是否必须描述
positionnumber, number, number三维场景当前的位置

18、呼出web的跟车控制面板

sdkName: layer.switchCameraUI

描述:UE找到车辆开始跟踪之后,控制web端打开/关闭web的跟车控制面板

字段名字段类型是否必须描述
enableboolean打开/关闭面板

19、孪生设备同步

sdkName: layer.update

描述:UE端返回视频接力中当前设备视频流和下一路设备的视频流地址

字段名字段类型是否必须描述
value{ this: string; next: string; }视频接力中的当前视频流和下一个视频流
entitystring被操作对象为图层

20、对象悬浮选择

sdkName: layer.hover

描述:UE端返回当前鼠标悬浮的对象

字段名字段类型是否必须描述
layerstring被高亮对象的图层名
targetstring被高亮对象的ID

21、对象双击选择

sdkName: layer.dclick

描述:UE端返回当前鼠标点击的对象

字段名字段类型是否必须描述
layerstring被高亮对象的图层名
targetstring被高亮对象的ID

1.0.1

2 years ago

1.0.0

2 years ago

1.0.0-alpha.0

2 years ago

0.2.2

2 years ago

0.2.1

2 years ago

0.2.0

2 years ago

0.1.14

2 years ago

0.1.13

2 years ago

0.1.12

2 years ago

0.1.11

2 years ago

0.1.10

2 years ago

0.1.9

2 years ago

0.1.8

2 years ago

0.1.7

2 years ago

0.1.6

2 years ago

0.1.5

2 years ago

0.1.4

2 years ago

0.1.3

2 years ago

0.1.2

2 years ago

0.1.1

2 years ago

0.1.0

2 years ago

0.0.7

2 years ago

0.0.6

2 years ago

0.0.5

2 years ago

0.0.4

2 years ago

0.0.3

2 years ago

0.0.2

2 years ago

0.0.1

2 years ago