| In the process of construction,BIM(Building Information Model)runs through the design,construction,post-construction maintenance and operation management stages in its unqiue way.With the popularization of BIM and the development of Internet technology,people are no longer statisfied with the status quo of BIM information islands caused by the software and hardware environment.Using the Internet to share BIM information has become a research focus.Moreover,as a carrier of internal complexity and parameterization of buildings,it is often used as one of the data source for GIS(Geographic Information System)scholars to research architectural space.However,because BIM data is usually designed to be parsed and generated on the OS(Operation System)platform,and cannot be directly read and rendered by Web GL(Web Graphics Library),breaking data barriers has become one of the key technologies for BIM cross-platform and information sharing.With the rapid increase in data volume,limited bandwith and computing resources have become the bottleneck of the development of Web BIM technology for BIM data that is already rich in information.Model lightweighting and rendering optimization strategies have become another challenge for technology development.In this paper,the Revit model is used as the data source.In response to the above problems,the main work done includes the following aspects.1.Realized the conversion of RVT data to GLB(Binary GLTF)data.Firstly,the information organization of Revit model and general GLTF(GL Transmission Format)data structure are analyzed.With the help of Revit API,program interfaces for converting RVT data to GLTF format is designed.Through the reuse of geometric data in the data conversion process,the redundancy of data is effectively diminished.Then the data structure of GLB is studied,the GLTF data in the memory is cleaned and eventually written into GLB format.Finally,using the Draco tool to compress the obtained GLB data to realize the lightweight storate of the RVT model.Using Three.js and Cesium to achieve visual rendering on the browser side,the experimental results prove that the converted data is valuable to apply.2.Decompose a single GLB file into GLB data sets.Firstly,based on the RTree algorithm,a single model data is decomposed into multiple data sets,and the RTree object is serialized into JSON(Java Script Object Notation)string and written into the file as the basis for loading and rendering of the front-end control data.Finally,wrote Ubuntu batch script to realize batch compression of GLB data set.3.Realized the dynamic model rendering scheduling based on viewpoint position.Based on the model space information contained in JSON,the front-end uses frustum culling,occlusion culling,and screen size culling technologies to remove models that contribute less than the threshold on the screen.Type Script code is written to implement data rendering control based on the culling results.4.Build a back-end service framework to test data transmission and rendering.The test results show that the rendering frame rate has been improved,which is valuable for studying the rendering optimization method of fine BIM models. |