添加测试信息

This commit is contained in:
yuding
2025-12-04 18:41:11 +08:00
parent 8a727c4485
commit 244891ceec
28 changed files with 41330 additions and 0 deletions

6
demo/.gitignore vendored Normal file
View File

@@ -0,0 +1,6 @@
node_modules/
dist/
lib/
.DS_Store
*.log

77
demo/README.md Normal file
View File

@@ -0,0 +1,77 @@
# BIM Engine SDK Demo
这是一个独立的演示项目,展示如何使用 BIM Engine SDK。
## 前置要求
1. 确保父项目已经构建完成:
```bash
cd ..
npm run build
```
2. 安装依赖:
```bash
npm install
```
3. 复制 SDK 文件到 demo 目录:
```bash
npm run copy-sdk
```
或者手动复制:
```bash
mkdir -p lib
cp ../dist/bim-engine-sdk.umd.js lib/
```
## 运行
### 开发模式
```bash
npm run dev
```
服务器会在 `http://localhost:8080` 启动,并自动打开浏览器。
### 构建
```bash
npm run build
```
构建后的文件会在 `dist` 目录中。
### 预览构建结果
```bash
npm run preview
```
## 项目结构
```
demo/
├── index.html # 主页面
├── model/ # 3D 模型文件
│ └── gujianzhu.glb
├── lib/ # SDK 文件目录
│ └── bim-engine-sdk.umd.js
├── package.json # 项目配置
├── vite.config.js # Vite 配置
└── README.md # 说明文档
```
## 使用说明
1. 点击 "初始化引擎" 按钮初始化 3D 引擎
2. 点击 "加载模型" 按钮加载 3D 模型
3. 其他功能按钮可以测试 SDK 的各种功能
## 注意事项
- 确保父项目的 `dist` 目录中有构建好的 SDK 文件
- 模型文件路径是相对于 `index.html` 的
- 使用 HTTP 服务器运行(不能直接打开 HTML 文件)以避免 CORS 问题

BIN
demo/model/gujianzhu.glb Normal file

Binary file not shown.

1059
demo/package-lock.json generated Normal file

File diff suppressed because it is too large Load Diff

16
demo/package.json Normal file
View File

@@ -0,0 +1,16 @@
{
"name": "bim-engine-demo",
"version": "1.0.0",
"description": "BIM Engine SDK Demo",
"type": "module",
"scripts": {
"dev": "vite",
"build": "vite build",
"preview": "vite preview",
"copy-sdk": "mkdir -p lib && cp ../dist/bim-engine-sdk.umd.js lib/ && cp ../dist/bim-engine-sdk.umd.js.map lib/ 2>/dev/null || true"
},
"devDependencies": {
"vite": "^7.2.6"
}
}

22
demo/vite.config.js Normal file
View File

@@ -0,0 +1,22 @@
import { defineConfig } from 'vite';
import { resolve } from 'path';
export default defineConfig({
root: '.',
server: {
port: 8080,
open: true,
// 允许访问父目录的文件(用于加载 SDK
fs: {
allow: ['..']
}
},
build: {
outDir: 'dist',
rollupOptions: {
input: {
main: resolve(__dirname, 'index.html')
}
}
}
});