# 快速开始 ::: details 目录 [[toc]] ::: ## 实例工程 ### 安装依赖包 ```vue npm install persagy_web3d ``` ### 初始化3D容器 新建一个BIMView.vue组件作为页面中显示3D场景的容器,嵌入到你需要显示的页面中,例如页面A ::: details BIMView.vue代码 ```vue ``` * 因为WebGl3D渲染本质上是在一个Canvas容器中进行渲染3D图像,所以在BimView组件模板代码中需要声明一个id名称为CanvasRoot的div元素用于初始化Canvas元素 * 当Vue模板渲染完成之后在mounted声明周期函数中初始化一个VueViewController类型对象,并将vue组件作为初始化参数传入,该对象会自动注册接收消息指令的事件,用于后续初始化场景。 ::: ### 添加工程配置文件 工程配置文件描述了场景应该具有的最基本的形态,比如相机默认位置,场景的背景色等各种信息 在工程静态资源目录(public或者static)中新建PorjectConfig.json文件 本实例是在public目录中新建JsonConfig目录,然后再JsonConfig目录中新建中新建PorjectConfig.json配置文件 配置文件请直接从**配置文件->完整示例**目录中粘贴 * 配置文件中的burl表示模型轻量化服务器的地址 * 配置文件中的rurl表示需要获取的的资源目录 ### 发送指令 在BIMView.vue的父组件中 也就是页面A 发送初始化场景的指令 引用组件 ```js import WEB3D from "persagy_web3d"; ``` 发送初始化场景的指令 ::: details 页面A中发送指令代码 ```js let messageList = [ { CmdName: "PEChengScene", Time: "", Platform: "", CmdParams: {}, OrderList: [ { OrderName: "PELoadScene", OrderParams: { SceneName: "PublicScene", Configs: ["JsonConfig/PorjectConfig.json"], }, }, ], }, { CmdName: "PEInitOrDelete3dObject", Time: "", Platform: "", CmdParams: {}, OrderList: [ { OrderName: "PEInitObject_V2", OrderParams: { URL: [ { rootpath: "wanda/F03", }, ], }, }, ], }, ]; WEB3D.PEMessage.emitMessageList(messageList); ``` * PELoadScene指令中的Configs参数是一个配置文件地址url的数组,如果路径错误导致加载失败则无法初始化3D场景 ::: ### 运行 上述代码从轻量化服务器上加载万达项目下的F03楼层中所有的3D模型文件并展示 ::: details 展示结果 ![avatar](../../Images/3DSceneDemo.png) :::