1.9.0 • Published 2 years ago

@dt-api/bim-api v1.9.0

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

Static Badge Static Badge Static Badge

Introduction

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

Features

Documentation

Install

$ npm i dtapi
$ npm i @dt-api/bim-api

Import

import DtApi from 'dtapi';
import BimApi from '@dt-api/bim-api';

Init

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 DtApi(config) as DtApi & BimApi;
App.Plugin.Install(BimApi);

Starting

Model example
// Get model list
const models = await App.DCP.GetModelList();

// Model initialization
const model = new App.Hierarchy({
    customData?: any,
    customId?: string,
    assetId?: string,
    seedId: string,
    assetName?: string,
    // Specify the location, default to the current camera position
    location?: [x,y,z]
});


// Model loading into scene
await App.Scene.Add(model);

// Model moving
await model.SetLocation([x, y, z]);

// Model rotation
await model.SetRotator({ pitch: 180, roll: 0, yaw: 30 });

// Model scaling
await model.SetScale3d([x, y, z]);

// Uninstall the model
await model.Delete();

// Model explicit implicit
await model.SetVisible(false);

// Model focus
await model.SetFocus();

// Model ground
await model.SetGround();

// Model layering
await model.SetDisassembly();
Component example
// Get component tree
await model.GetNodeTree();

// Component Tree List Search
await model.GetNodeTreeBySearch('search');

// Component Focus
await model.SetNodeVisibility('1100', true);

// Component Focus
await model.SetNodeFocus('1100');

License

Copyright (c) 2023-present

1.9.0

2 years ago