vim-web 0.3.27-dev.2 → 0.3.28
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +55 -32
- package/package.json +7 -5
package/README.md
CHANGED
|
@@ -1,60 +1,83 @@
|
|
|
1
|
-
#
|
|
1
|
+
# VIM WebGL Component
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
### Documentation
|
|
4
4
|
|
|
5
|
-
[API Documentation](https://vimaec.github.io/vim-web/api/)
|
|
5
|
+
Explore the full [API Documentation](https://vimaec.github.io/vim-web/api/).
|
|
6
6
|
|
|
7
|
-
|
|
7
|
+
### Package
|
|
8
|
+
https://www.npmjs.com/package/vim-web
|
|
8
9
|
|
|
9
|
-
##
|
|
10
|
-
- [Small Model Demo - Residence](https://vimaec.github.io/vim-webgl-app/release?vim=https://vim02.azureedge.net/samples/residence.v1.2.75.vim)
|
|
11
|
-
- [Medium Model Demo - Medical Tower](https://vimaec.github.io/vim-webgl-app/release?vim=https://vim02.azureedge.net/samples/skanska.vim)
|
|
12
|
-
- [Large Model Demo - Stadium](https://vimaec.github.io/vim-webgl-app/release?vim=https://vim02.azureedge.net/samples/stadium.vim) (_Warning_: slow download times)
|
|
10
|
+
## Live Demo
|
|
13
11
|
|
|
14
|
-
|
|
12
|
+
### WebGL Viewer
|
|
13
|
+
- **[Small - Residence](https://vimaec.github.io/vim-web/webgl)**
|
|
14
|
+
- **[Medium - Medical Tower](https://vimaec.github.io/vim-web/webgl?vim=https://vim.azureedge.net/samples/skanska.vim)**
|
|
15
|
+
- **[Small - Stadium](https://vimaec.github.io/vim-web/webgl?vim=https://vim.azureedge.net/samples/stadium.vim)**
|
|
15
16
|
|
|
16
|
-
|
|
17
|
+
### Ultra Viewer
|
|
18
|
+
- **[Small - Residence](https://vimaec.github.io/vim-web/ultra)**
|
|
19
|
+
- **[Medium - Medical Tower](https://vimaec.github.io/vim-web/ultra?vim=https://vim.azureedge.net/samples/skanska.vim)**
|
|
20
|
+
- **[Small - Stadium](https://vimaec.github.io/vim-web/ultra?vim=https://vim.azureedge.net/samples/stadium.vim)**
|
|
17
21
|
|
|
18
|
-
|
|
22
|
+
Find detailed camera controls here: [Camera Controls](https://docs.vimaec.com/docs/vim-cloud/webgl-navigation-and-controls-guide).
|
|
19
23
|
|
|
20
|
-
|
|
21
|
-
- Test and demonstrate the capabilities of the underlying vim-webgl-viewer.
|
|
22
|
-
- Be easy to use, extend and customize for other developpers.
|
|
24
|
+
## Overview
|
|
23
25
|
|
|
24
|
-
|
|
26
|
+
The **VIM-Web** repository consists of four primary components, divided into two layers:
|
|
25
27
|
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
28
|
+
### Core Viewers
|
|
29
|
+
- **WebGL Viewer:** A WebGL-based viewer for the VIM format. Includes features like outlines, ghosting, and sectioning, but without UI components.
|
|
30
|
+
- **Ultra Viewer:** A high-performance viewer for the VIM Ultra Render Server, optimized for scale and speed.
|
|
29
31
|
|
|
30
|
-
###
|
|
32
|
+
### React Viewers
|
|
33
|
+
- **WebGL Component:** A React-based wrapper for the WebGL viewer, providing interactive UI elements and a BIM explorer.
|
|
34
|
+
- **Ultra Component:** A React-based wrapper for the Ultra viewer, featuring a UI for real-time interactions.
|
|
35
|
+
|
|
36
|
+
## VIM Format
|
|
37
|
+
|
|
38
|
+
The **VIM** file format is a high-performance 3D scene format that supports rich BIM data. It can also be extended to accommodate other relational and non-relational datasets. Unlike **IFC**, the VIM format is pre-tessellated, allowing for rapid loading and rendering.
|
|
31
39
|
|
|
32
|
-
|
|
33
|
-
|
|
40
|
+
Learn more about the VIM format here: [VIM GitHub Repository](https://github.com/vimaec/vim).
|
|
41
|
+
|
|
42
|
+
### Built With
|
|
43
|
+
- [VIM WebGL Viewer](https://github.com/vimaec/vim-webgl-viewer)
|
|
44
|
+
- [React.js](https://reactjs.org/)
|
|
34
45
|
|
|
35
46
|
## Getting Started
|
|
36
47
|
|
|
37
|
-
|
|
38
|
-
2. Open the project in VS Code.
|
|
39
|
-
3. Install packages by running npm install.
|
|
40
|
-
4. Run the dev command to start a live test server.
|
|
48
|
+
Follow these steps to get started with the project:
|
|
41
49
|
|
|
42
|
-
|
|
50
|
+
1. Clone the repository.
|
|
51
|
+
2. Open the project in **VS Code**.
|
|
52
|
+
3. Install the dependencies: `npm install`.
|
|
53
|
+
4. Start the development server: `npm run dev`.
|
|
54
|
+
|
|
55
|
+
> **Note:** Ensure you have a recent version of **Node.js** installed, as required by Vite.
|
|
56
|
+
|
|
57
|
+
## Repository Organization
|
|
58
|
+
|
|
59
|
+
- **`./docs`:** Root folder for GitHub Pages, built using the `build:website` script.
|
|
60
|
+
- **`./dist`:** Contains the built package for npm, created with the `build:libs` script.
|
|
61
|
+
- **`./src/pages`:** Source code for the demo pages published on GitHub Pages.
|
|
62
|
+
- **`./src/vim-web`:** Source code for building and publishing the vim-web npm package.
|
|
63
|
+
- **`./src/core-viewers/webgl`:** Source code for the WebGL core viewer. Based on [vim-webgl-viewer](https://github.com/vimaec/vim-webgl-viewer).
|
|
64
|
+
- **`./src/core-viewers/ultra`:** Source code for the Ultra core viewer.
|
|
65
|
+
- **`./src/react-viewers/webgl`:** Source code for the WebGL React component. Based on [vim-webgl-component](https://github.com/vimaec/vim-webgl-component).
|
|
66
|
+
- **`./src/react-viewers/ultra`:** Source code for the Ultra React component.
|
|
43
67
|
|
|
44
68
|
## License
|
|
45
69
|
|
|
46
|
-
Distributed under the MIT License
|
|
70
|
+
Distributed under the **MIT License**. See `LICENSE.txt` for more details.
|
|
47
71
|
|
|
48
72
|
## Contact
|
|
49
73
|
|
|
50
|
-
- Simon Roberge - simon.roberge@vimaec.com
|
|
51
|
-
- Martin Ashton - martin.ashton@vimaec.com
|
|
74
|
+
- **Simon Roberge** - [simon.roberge@vimaec.com](mailto:simon.roberge@vimaec.com)
|
|
75
|
+
- **Martin Ashton** - [martin.ashton@vimaec.com](mailto:martin.ashton@vimaec.com)
|
|
52
76
|
|
|
53
77
|
## Acknowledgments
|
|
54
78
|
|
|
55
|
-
|
|
56
|
-
|
|
79
|
+
Special thanks to these packages and more:
|
|
57
80
|
- [react-complex-tree](https://github.com/lukasbach/react-complex-tree)
|
|
58
81
|
- [re-resizable](https://github.com/bokuweb/re-resizable)
|
|
59
82
|
- [react-tooltip](https://github.com/ReactTooltip/react-tooltip)
|
|
60
|
-
- [
|
|
83
|
+
- [Strongly Typed Events](https://github.com/KeesCBakker/Strongly-Typed-Events-for-TypeScript#readme)
|
package/package.json
CHANGED
|
@@ -1,11 +1,12 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "vim-web",
|
|
3
|
-
"version": "0.3.
|
|
3
|
+
"version": "0.3.28",
|
|
4
4
|
"description": "A demonstration app built on top of the vim-webgl-viewer",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"files": [
|
|
7
7
|
"dist"
|
|
8
8
|
],
|
|
9
|
+
"readme": "README.md",
|
|
9
10
|
"main": "./dist/vim-web.iife.js",
|
|
10
11
|
"types": "./dist/types/index.d.ts",
|
|
11
12
|
"module": "./dist/vim-web.mjs",
|
|
@@ -24,11 +25,11 @@
|
|
|
24
25
|
"build:libs": "vite build --config vite.config.libs.js && npm run declarations:libs",
|
|
25
26
|
"package:libs": "npm run build:libs && npm publish",
|
|
26
27
|
"declarations:libs": "tsc --project tsconfig.libs.json --declaration --emitDeclarationOnly --outdir ./dist/types",
|
|
27
|
-
"documentation:libs": "typedoc --entryPoints src/vim-web/
|
|
28
|
+
"documentation:libs": "typedoc --entryPoints src/vim-web/index.ts --entryPointStrategy expand --out docs/api --excludeProtected --excludeExternals --excludePrivate",
|
|
28
29
|
"build:website": "vite build --config vite.config.website.js && npm run copy:website && npm run documentation:libs && npm run commit:website",
|
|
29
|
-
"serve:website": "vite preview --outDir docs",
|
|
30
|
-
"commit:website": "git add
|
|
31
|
-
"copy:website": "
|
|
30
|
+
"serve:website": "vite preview --outDir docs",
|
|
31
|
+
"commit:website": "git add docs && git commit -m 'Build website[ci skip]' && git push",
|
|
32
|
+
"copy:website": "node scripts/copyIndex.js",
|
|
32
33
|
"eslint": "eslint --ext .js,.ts,.tsx src --fix"
|
|
33
34
|
},
|
|
34
35
|
"devDependencies": {
|
|
@@ -44,6 +45,7 @@
|
|
|
44
45
|
"eslint-plugin-promise": "^6.0.1",
|
|
45
46
|
"eslint-plugin-react": "^7.37.2",
|
|
46
47
|
"eslint-plugin-react-hooks": "^5.0.0",
|
|
48
|
+
"fs-extra": "^11.2.0",
|
|
47
49
|
"postcss": "^8.4.49",
|
|
48
50
|
"prettier": "^3.4.2",
|
|
49
51
|
"prettier-plugin-tailwindcss": "^0.6.9",
|