# mount
Once created, the BIMDataViewer must be mounted to a DOM (opens new window) element in order to be displayed to the user.
bimdataViewer.mount("#viewerId"); // 'viewerId' must be the id of an existing element.
The mount method take an optional second argument: the layout
. The layout
is the configuration of the windows displayed at startup. The default value is "3d"
, which is the name of a window registered by default. The "3d"
window includes many BIMData plugins like
"viewer3d"
,
"section"
,
"projection"
,
"structure-properties"
...
The layout object passed to the bimdataviewer.mount
method can be either a string
or an object
.
- If string, it must be the name of a registered window.
- If object, the layout represents a window or a recursive object representing a container of window names.
# Window
A window is represented by a string
with its name or the following Object:
Name | Type | Description |
---|---|---|
windowName | string | The name of the window to load. |
windowState | { modelIds: number, viewpoint: Object, storey: string } | The state to load. (the storey string is the storey key) |
# Container
Name | Type | Description |
---|---|---|
ratios | number[] | Required. The amount of space (in %) taken by respective children. |
children | string[] | object[] | Required. An array of window names as string or other containers as object. |
direction | string | "column" or "row" (default). The direction of the container. |
Here is an example of a complex layout:
const layout = {
ratios: [40, 60],
children: [
"window-1",
{
direction: "column",
ratios: [40, 60],
children: [
"window-2",
{
windowName: "window-3",
windowState: {
modelIds: [4717],
},
},
],
},
],
};
The result is the following UI layout: