1.6.4 • Published 1 month ago

@wdp-api/bim-api v1.6.4

Weekly downloads
-
License
MIT
Repository
-
Last release
1 month ago

Static Badge Static Badge Static Badge

Introduction

This is a JavaScript plugin for WdpApi. It provides a set of APIs for developers to integrate BIM/DCP into their own applications.

Features

Documentation

To check out and docs, visit WdpApi Doc

安装

$ npm i wdpapi
$ npm i @wdp-api/bim-api

导入

import WdpApi from 'wdpapi';
import BimApi from '@wdp-api/bim-api';

初始化

const config = {
  id: 'player', //[required] Render scene container(DOM node id)
  url: 'http://172.31.10.93:8889/Renderers/Any/order', //[optional] Cloud rendering service address
  order: 'b96285A3', //[optional] Rendering order, obtained on the cloud rendering client
  resolution: [3840, 2160], //[optional] Set the cloud rendering output resolution[width, height]
  debugMode: 'normal', //[optional] none: does not print logs, normal: normal logs
  keyboard: {
    //[optional] keyboard event
    normal: false, //[optional] Keyboard event, exclude F1~F12 [default disabled]
    func: false, //[optional] Browser F1 ~ F12 function keys [default disabled]
  },
};
const App = new WdpApi(config) as WdpApi & BimApi;
App.Plugin.Install(BimApi);

开始使用

模型操作
// 获取模型列表
const models = await App.DCP.GetModelList();

// 模型初始化
const model = new App.Hierarchy({
    customData?: any,
    customId?: string,
    assetId?: string,
    seedId: string,
    assetName?: string,
    // 指定位置,默认为当前相机位置
    location?: [x,y,z]
});


// 模型加载
await App.Scene.Add(model);

// 模型移动
await model.SetLocation([x, y, z]);

// 模型旋转
await model.SetRotator({ pitch, roll, yaw });

// 模型缩放
await model.SetScale3d([x, y, z]);

// 卸载模型
await model.Delete();

// 模型显隐
await model.SetVisible(boolean);

// 模型定位
await model.SetFocus();

// 落地
await model.SetGround();

// 分层/拆楼
await model.SetDisassembly();

// 获取偏移量
await model.GetTransform();

// 上传文件
await App.DCP.Upload.FileUpload(file: File);

// 设定上传文件的代理地址
await App.DCP.Upload.SetProxy(url: string);

// 设定上传文件地址的token字段名称, 默认值: token
await App.DCP.Upload.SetToken(token: string);

// 查看上传/转换中的文件列表
await App.DCP.Upload.GetTaskList();
构件操作
// 获取构件列表
await model.GetNodeTree(nodeId?:string);

// 构件搜索, 返回树结构数据
await model.GetNodeTreeBySearch(keyword: string);

// 构件搜索, 返回列表接口
await model.GetNodeListBySearch(keyword: string);

// 构件详情,只有最下层叶子节点才后有属性值
await model.GetNodeAttr(nodeId: string);

// 构件显隐
await model.SetNodesVisibility(nodeId: string, visible: boolean);

// 构件定位
await model.SetNodeFocus(nodeId: string);

License

Copyright (c) 2023-present, 51WORLD

1.6.4

1 month ago

1.5.2

2 months ago

1.6.0

4 months ago

1.5.0

6 months ago