0.0.27 • Published 1 year ago

dragv-cli-service-3d v0.0.27

Weekly downloads
-
License
ISC
Repository
-
Last release
1 year ago

unity3D接口记录

各类型id前缀

如果模型id是 model-uLve0o9pKn

model,//远程模型
heatingArea,//热力区
signModel,//标识
flyLine,//单条飞线
rflyLine,//辐射飞线
cflyLine,//连续飞线
routPoint,//路径点
fproutPoint,//第一人称路径点
circleZone,//圆形区域
squareZone,//长方形区域
polygonZone,//多边形区域

场景配置

方法:ChangeEnvironment(string data) 场景还可以新增preview参数,preview:true 场景事件/操作正常、preview:flase 场景事件/无法操作。 push到 gui场景配置数组 中,gui场景配置数组.push({name:"preview", value: false})。

unityProvider.send('ReceiveFrontManager', 'ChangeEnvironment', JSON.stringify(gui场景配置数组))

配置分辨率

方法:SetResolution(string size)

unityProvider.send('ReceiveFrontManager', 'SetResolution', '1920x1080');

点击生成某个物体 新增单个模型 返回物体信息

方法:CreateObject(string json) 回调:ClickCreateObject(string json)

// 新增
unityProvider.send('ReceiveFrontManager', 'CreateObject', JSON.stringify({
    components:{"模型id":"模型配置对象"}, //只传输创建的这个模型对象,非所有
    layout:[{当前模型层}] //只传输创建的这个模型层,非所有
}));

// 返回物体信息 回调下载模型后,新增的这个模型参数 unityProvider.on("ClickCreateObject",(string json)=>{ json为上面传输的数据再返回过来,回来后,再调用 CreateAllObject(string json)//生成全部物体 })

#### 设置多个或者单个物体显隐
>方法:SetShowHide(string json: {string[] ids,int type})<br/>
ids:["model-1213213"]<br/>
type:1显示 2隐藏 3显隐切换<br/>
time:1 //渐隐渐显时间

unityProvider.send('ReceiveFrontManager', 'SetShowHide', JSON.stringify({ ids:"model-1213213", type:1, time:1 }));

#### 设置场景视角
>方法:SetCamera(int type)<br/>
type:1上帝视角 2第一人称

unityProvider.send('ReceiveFrontManager', 'SetCamera', 1);

#### 注视某个物体
>方法:SetLookTartget(string id)

unityProvider.send('ReceiveFrontManager', 'SetLookTartget', '"model-1213213"');

#### 二维 / 三维界面选中某个模型
>方法:FrontSelectObject(string id)<br/>
回调:SelectObject(string id)

// 二维界面选中某个模型 unityProvider.send('ReceiveFrontManager', 'FrontSelectObject', 'model-1213213');

// 三维界面选中某个模型 unityProvider.on("SelectObject",(string id))=>{ 返回的选中id })

#### 二维界面修改某个模型配置信息
>方法:UpdateObjectInfo(string data)

unityProvider.send('ReceiveFrontManager', 'UpdateObjectInfo', JSON.stringify({ components:{"模型id":"模型配置对象"}, //只传输创建的这个模型对象,非所有 layout:{当前模型层} //只传输创建的这个模型层,非所有,可以为空数组 }));

#### 三维界面修改某个模型配置信息 返回物体修改后的最新数据
>回调:UpdateObject(string json)

unityProvider.on("UpdateObject",(string json)=>{ json为上面传输的数据一样 })

#### 触发事件
>回调:EventTrigger(string data)<br/>
目前事件有 onclick 、 ondblclick、onmouseover、onmouseout

unityProvider.on("EventTrigger ,(string data)=>{ id 是当前事件触发的模型id eventname 事件名称 })

#### 触发回调
>回调:EventCallBack(string data)<br/>
目前事件有 onclick 、 ondblclick、onmouseover、onmouseout

unityProvider.on("EventCallBack ,(string data)=>{ id 是当前事件触发的模型id eventname 事件名称 })

#### 生成所有三维物体
>方法:CreateAllObject(string data)

unityProvider.send('ReceiveFrontManager', 'CreateAllObject', JSON.stringify({ components:{"模型id":"模型配置对象",...}, //所有模型对象 layout:{当前模型层},... //所有模型层 }));

#### 设置快捷键
>方法:GetInputKey(string key)<br/>
key参数为 KeyboardEvent 中的 e.key

unityProvider.send('ReceiveFrontManager', 'GetInputKey', e.key)

#### unity初始化成功后执行
>回调:UnityInit()

unityProvider.on("UnityInit",()=>{ // 这里面才能执行unity定义的方法 })

#### 设置选中的模型 移动、旋转、缩放
>方法:SetTransformGizo(int type)<br/>
type : 类型1移动2旋转3缩放

unityProvider.send('ReceiveFrontManager', 'SetTransformGizo', 1)

#### 设置某个物体文字修改
>方法:ObjectText(string data)<br/>
data : { id:string, text:string }

unityProvider.send('ReceiveFrontManager', 'ObjectText', JSON.stringify({ id:string, text:string }))

#### 进度条进度
>回调:UpdateProcess(float value)<br/>
value:0.25

unityProvider.on("UpdateProcess" ,(value)=>{ value //数字进度 })

#### 三维物体创建完成后回调,一般用于创建后 选中组件
>回调:ObjCreateComplete(string str)<br/>
value:0.25

unityProvider.on("ObjCreateComplete" ,(str)=>{ str //id })

#### 多条飞线的话,需要返回新的飞线数据,方便下一次点击创建新的飞线
>方法:FlyLineCreate(string data)

unityProvider.send('ReceiveFrontManager', 'FlyLineCreate', JSON.stringify({ components:{"模型id":"模型配置对象",...}, //所有模型对象 layout:{当前模型层},... //所有模型层 }));

#### 切换场景
>方法:CreateScene(string name)
> TestScene  Build ChengDuScene

unityProvider.send('ReceiveFrontManager', 'CreateScene', 'TestScene');

#### 切换场景距离
>方法:SetCameraDistance(string dis)

unityProvider.on("SetCameraDistance" ,(dis)=>{ str //数字 })

#### 开启debug
>方法:SetDebug(string on)

unityProvider.send('ReceiveFrontManager', 'SetDebug', 'false');

#### 如果开启gis数据后,需要发送gis数据
>方法:GISPos(string data)

unityProvider.send('ReceiveFrontManager', 'GISPos', JSON.stringify({ id:"模型id", //模型id data:{},... //当前模型gis数据 }));

0.0.27

1 year ago

0.0.26

1 year ago

0.0.23

2 years ago

0.0.24

2 years ago

0.0.25

2 years ago

0.0.22

2 years ago

0.0.20

2 years ago

0.0.21

2 years ago

0.0.16

2 years ago

0.0.17

2 years ago

0.0.18

2 years ago

0.0.19

2 years ago

0.0.11

2 years ago

0.0.13

2 years ago

0.0.14

2 years ago

0.0.15

2 years ago

0.0.10

2 years ago

0.0.9

2 years ago

0.0.8

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