A remote online browsing and collaboration system for CAD and BIM files

The system addresses network delays in remote CAD and BIM file collaboration by using OpenGL, WebAssembly, and Websocket technologies to compress and render files efficiently, ensuring smooth collaboration on web/mobile terminals.

CN114896646BActive Publication Date: 2024-12-17ZHEJIANG WUZHOU ENG PROJECT MANAGEMENT CO LTD +2
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202210322101.5
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2022-03-30
Publication Date
2024-12-17
Estimated Expiration
2042-03-30

AI Technical Summary

Technical Problem

Large CAD and BIM files cause significant network delays and poor user experience during remote online browsing, annotation, and collaboration due to high data volumes, especially when using web or mobile smart terminals.

Method used

A collaborative system utilizing OpenGL, WebAssembly, and Websocket technologies to parse, process, and compress CAD and BIM files, enabling efficient transmission and rendering on web/mobile terminals, with a server cluster, model parsing, processing, and collaboration modules, and data compression techniques.

Benefits of technology

Reduces file sizes by 10-25% while maintaining model integrity, allowing seamless remote browsing, annotation, and collaboration on web/mobile terminals.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN114896646B_ABST
    Figure CN114896646B_ABST
Patent Text Reader

Abstract

The present invention relates to a CAD and BIM file remote online browsing collaborative system. It includes a server cluster, a Web / mobile intelligent terminal, a model parsing module, a model processing module, a model graphics rendering module and a model Web / mobile intelligent terminal application, as well as a model original system data entity, a component library and a model own system data geometry library for storing converted geometric bodies. The present invention can compress the size of the model information file to about 10%-25% of the size of the original model file while maintaining most of the information of the original model, so as to render through a browser, and facilitate engineering personnel to use the Web or mobile intelligent terminal to perform remote browsing, annotation, review and other collaborative work of CAD and BIM files.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The invention relates to a CAD and BIM file remote online browsing collaborative system. Background Art

[0002] The general process of the construction industry: from survey, preliminary design, design, construction delivery to later operation, a key technology of informatization is the lightweight of building digital models. The development of the construction industry requires all parties involved in the project to conduct remote online browsing, annotation, review and other collaborative work of CAD and BIM files through browsers or mobile smart terminals. Since the commonly used CAD and BIM files are too large, there will be a relatively large delay in network transmission, resulting in too long waiting time and very poor experience for all parties involved in the project when using the Web or mobile smart terminals to conduct remote browsing, annotation, review and other collaborative work of CAD and BIM files. In order to solve the above problems, the present invention provides a new processing solution for remote browsing, annotation, review and other collaborative work of CAD and BIM files based on OpenGL, WebAssembly and Websocket technologies. Summary of the invention

[0003] In view of the problems existing in the prior art, the purpose of the present invention is to provide a technical solution for a remote online browsing collaborative system of CAD and BIM files.

[0004] The CAD and BIM file remote online browsing collaborative system is characterized by comprising a server cluster, a Web / mobile intelligent terminal, a model parsing module, a model processing module, a model graphics rendering module and a model Web / mobile intelligent terminal application, as well as a model original system data entity, a component library for storing original system data entities and components, and a model own system data geometry library for storing converted geometric bodies;

[0005] Server cluster side: including but not limited to multiple server clusters;

[0006] Web / mobile smart terminals: including but not limited to web browsers, smart phones, and tablets;

[0007] Web / mobile smart terminal application: browser application or mobile smart terminal application;

[0008] Model parsing module: used to parse the original system data entities and components of the imported CAD / BIM design drawings, and store the parsed entities, components, and topological relationships of components in the database to provide input sources for subsequent model processing modules;

[0009] Model processing module: Use OpenGL technology to triangulate and lighten the model into geometric bodies, including the model's geometric data and attributes, spatial non-geometric information, and store them in the library, while providing the function of storing custom components in the library;

[0010] Model graphics rendering module: obtains the corresponding data required for display according to the component type, including the coordinates of the component entity vertices, the color of the graphic entity, the text description and text format corresponding to the text entity, the radius and radian corresponding to the arc entity, and the geometric topological relationship between each entity and component;

[0011] Model collaboration module: responsible for the compression, transmission, and control of the data required for the display of the model in the mobile smart terminal application, as well as real-time communication with the mobile smart terminal application through WebSocket, thereby realizing the collaborative functions of annotation and review;

[0012] Web / mobile smart terminal application module: that is, collaborative work of browsing and annotating CAD / BIM files based on the web or mobile smart terminals;

[0013] Model original system data entity and component library: used to store original system data entities and components;

[0014] Model's own system data geometry library: The model's own system data geometry library stores the converted geometry, and can also manually add custom system geometry.

[0015] The CAD and BIM file remote online browsing collaborative system is characterized in that the specific workflow of the model parsing module is as follows:

[0016] a1: Use openGl technology to build the basic application structure, including basic space scenes, 3D renderers, and visualization camera components, which are used to create space containers with 3D coordinates;

[0017] a2: Extract basic dimensional parameters of various components based on industry design specifications and imported CAD / BIM design drawings to build data entities and component libraries, determine the geometric topological relationship between components, and output them according to structural form and hierarchy classification, and store and update them to the original system data entity and component library of the model.

[0018] The CAD and BIM file remote online browsing collaborative system is characterized in that the specific workflow of the model processing module is as follows:

[0019] b1: Use opengGl technology to triangulate data entities and components into lightweight geometric bodies;

[0020] b2: Update the geometric topological relationship between the components and store them together with the lightweight geometric bodies into the model's own system data geometric body library;

[0021] b3: In step b2, custom components can also be added to the component library by inputting structural parameters through a visual interface.

[0022] The CAD and BIM file remote online browsing collaborative system is characterized in that the specific workflow of the model graphics rendering module is as follows:

[0023] c1: Convert CAD / BIM coordinate system and instance coordinate point mapping into openGl coordinate axis expression;

[0024] c2: Apply material to the model, set the model's environmental characteristics and lighting and other technical specification parameters according to requirements.

[0025] The CAD and BIM file remote online browsing collaborative system is characterized in that the specific workflow of the model collaborative module is as follows:

[0026] d1: Determine whether the number of CAD / BIM entities and file size exceed the set value. If they exceed the set value, compress and compile them into a binary WebAssembly file, and then transmit the data to the WEB and mobile smart terminal applications, including:

[0027] d101: Define N data volume as the conversion setting value, and determine whether to enable compression by judging the number of CAD / BIM entities and data volume;

[0028] d102: The compression process specifically includes compressing the graphic data into a specific json expression format using specific rules, further compressing the data stream file using the open source compression algorithm zip, and uploading the WebAssembly file after conversion into binary format to the front end; wherein the converted json data realizes data compression by storing classified entity data and the mapping relationship between entities and various parameter types; wherein the classified entities include entity type, color classification, coordinate point classification, text expression classification, and entity topology classification;

[0029] d2: The Web / mobile intelligent terminal application module displays the model graphics rendering information sent by the model collaboration module, and transmits the interactive annotations and review information back to the model collaboration module.

[0030] The method for remote online browsing and collaboration of CAD and BIM files is characterized by the following steps:

[0031] 1) Import the CAD / BIM graphic source file into the model parsing module of the server cluster application;

[0032] 2) The model parsing module parses the imported CAD / BIM graphic original files into original system data entities and components, and serializes them into the model original system data entity and component library;

[0033] 3) Send the original system data entities and components to the model processing module;

[0034] 4) Then the model processing module uses OpenGL to perform technical geometric triangulation on the newly stored original system data entities, component library data entities, and components, lightweight them into geometric bodies, and serialize them into the model's own system geometry library;

[0035] 5) 2D and 3D rendering of lightweight geometry that needs to be displayed based on OpenGL or OpenGL;

[0036] 6) Compile into a WebAssembly file that can be referenced by the dynamic scripting language JavaScript through Emscripten software;

[0037] 7) Users send entity and component display requirements through HTTP or HTTPS in Web / mobile smart terminal application interaction;

[0038] 8) The model collaboration module sends the corresponding WebAssembly file to the Web and mobile smart terminal applications through HTTP or HTTPS; the model collaboration module sends the corresponding lightweight geometry information of the entities and components to be displayed to the Web / mobile smart terminal applications through WebSocket;

[0039] 9) JavaScript calls the WebAssembly file sent by the server cluster application, and renders and displays the lightweight geometric information corresponding to the entities and components that need to be displayed on the HTML5 page Canvas of the Web or the application of the mobile smart terminal;

[0040] 10) The user's interactive collaboration information in the Web / mobile smart terminal application can be transmitted back to the server cluster model collaboration module through WebSocket for corresponding processing.

[0041] The present invention can compress the size of the model information file to about 10%-25% of the original model file size while maintaining most of the original model information, so that it can be rendered through a browser, making it convenient for engineering personnel to use the Web or mobile smart terminals to perform remote browsing, annotation, review and other collaborative work of CAD and BIM files. BRIEF DESCRIPTION OF THE DRAWINGS

[0042] Figure 1It is a schematic diagram of the collaborative work flow of remote browsing, annotation, and review of CAD and BIM files of the present invention. DETAILED DESCRIPTION

[0043] The present invention will be further described below in conjunction with the accompanying drawings:

[0044] The present invention includes a server cluster (including but not limited to multiple server clusters), a Web / mobile smart terminal (including but not limited to web browsers, smart phones, tablets, etc.), a model parsing module, a model processing module, a model graphics rendering module and a model Web / mobile smart terminal application (browser application or mobile smart terminal application), a model of the original system data entity, a component library for storing original system data entities, components and a model of the converted geometric bodies, a self-owned system data geometric body library.

[0045] Model parsing module:

[0046] It is used to parse the original system data entities and components of the imported CAD / BIM design drawings, and store the parsed entities, components, and topological relationships of components in the database, providing an input source for subsequent model processing modules, as follows:

[0047] a1: Use openGl technology to build the basic application structure, including basic space scenes, 3D renderers, and visualization camera components, which are used to create space containers with 3D coordinates;

[0048] a2: Extract basic dimensional parameters of various components based on industry design specifications and imported CAD / BIM design drawings to build data entities and component libraries, determine the geometric topological relationship between components, and output them according to structural form and hierarchy classification, and store and update them to the original system data entity and component library of the model.

[0049] Model processing module:

[0050] Use openGL technology to triangulate the model and lighten it into a geometric body: including the model's geometric data and attributes, spatial and other non-geometric information, and store them in the library. At the same time, it provides the function of storing custom components, as follows:

[0051] b1: Use opengGl technology to triangulate data entities and components into lightweight geometric bodies;

[0052] b2: Update the geometric topological relationship between the components and store them together with the lightweight geometric bodies into the model's own system data geometric body library;

[0053] b3: In step b2, custom components can also be added to the component library by inputting structural parameters through a visual interface.

[0054] Model graphics rendering module:

[0055] According to the component type, the corresponding data required for display is obtained, such as the coordinates of the component entity vertices, the color of the graphic entity, the text description and text format corresponding to the text entity, the radius and radian corresponding to the arc entity, and the geometric topological relationship between each entity and component, etc., as follows:

[0056] c1: Convert CAD / BIM coordinate system and instance coordinate point mapping into openGl coordinate axis expression;

[0057] c2: Apply materials to the model, set the model's environmental characteristics, lighting and other technical specifications as required.

[0058] Model collaboration module:

[0059] Responsible for the compression, transmission, and control of the data required for the model to be displayed in the mobile smart terminal application, as well as real-time communication with the mobile smart terminal application through WebSocket, so as to realize collaborative functions such as annotation and review, as follows:

[0060] d1: Determine whether the number of CAD / BIM entities and file size exceed the set value. If they exceed the set value, compress and compile them into a binary WebAssembly file, and then transmit the data to the WEB and mobile smart terminal applications, including:

[0061] d101: Define N data volumes as the conversion setting value, and determine whether to enable compression by judging the number of CAD / BIM entities and data volume;

[0062] d102: The compression process specifically includes compressing the graphic data into a specific json expression format using specific rules, further compressing the data stream file using the open source compression algorithm zip, and uploading the WebAssembly file after conversion into binary format to the front end; the converted json data realizes data compression by storing classified entity data and the mapping relationship between entities and various parameter types; the classified entities include entity type, color classification, coordinate point classification, text expression classification, entity topology classification, etc.;

[0063] d2: The Web / mobile intelligent terminal application module displays the model graphics rendering information sent by the model collaboration module, and transmits the interactive annotations, review and other information back to the model collaboration module.

[0064] Web / mobile smart terminal application module: it enables collaborative work such as browsing and annotating CAD / BIM files based on the web or mobile smart terminals.

[0065] Model original system data entity and component library: used to store original system data entities and components.

[0066] Model's own system data geometry library: The model's own system data geometry library stores the converted geometry, and can also manually add custom system geometry.

[0067] The steps of the remote online browsing collaborative method of CAD and BIM files of the present invention are as follows:

[0068] 1) Import the CAD / BIM graphic source file into the model parsing module of the server cluster application;

[0069] 2) The model parsing module parses the imported CAD / BIM graphic original files into the original system data entities and components, and serializes them into the model original system (referring to the system that generates the CAD / BIM graphic source files) data entity and component library;

[0070] 3) Send the original system data entities and components to the model processing module;

[0071] 4) Then the model processing module uses OpenGL to perform technical geometric triangulation on the newly stored original system data entities, component library data entities, and components, lightweight them into geometric bodies, and serialize them into the model's own system geometry library;

[0072] 5) 2D and 3D rendering of lightweight geometric objects that need to be displayed based on OpenGL (partial interface) (applicable to PC) or OpenGL (ES 2.0) (applicable to mobile smart terminals);

[0073] 6) Compile into a WebAssembly file that can be referenced by the dynamic scripting language JavaScript through Emscripten software;

[0074] 7) Users send entity and component display requirements through HTTP or HTTPS in Web / mobile smart terminal application interaction;

[0075] 8) The model collaboration module sends the corresponding WebAssembly file to the Web and mobile smart terminal applications through HTTP or HTTPS; the model collaboration module sends the corresponding lightweight geometry information of the entities and components to be displayed to the Web / mobile smart terminal applications through WebSocket;

[0076] 9) JavaScript calls the WebAssembly file sent by the server cluster application, and renders and displays the lightweight geometric information corresponding to the entities and components that need to be displayed on the HTML5 page Canvas of the Web or the application of the mobile smart terminal;

[0077] 10) The user's interactive collaboration information in the Web / mobile smart terminal application can be transmitted back to the server cluster model collaboration module through WebSocket for corresponding processing.

[0078] Figure 1 The steps corresponding to the numbers are described in detail as follows:

[0079] 1. Import CAD / BIM graphic source files;

[0080] 2. Parse into original system data entities and components, and enter the original system entity and component library;

[0081] 3. The outbound entry module processes the module;

[0082] 4. Use OpenGL (ES2.0) technology to triangulate and lighten the geometry into geometric bodies, and then add them into the own system geometry library;

[0083] 5. Based on OpenGL (ES2.0), perform 2D and 3D vector graphics rendering on the lightweight geometry that needs to be displayed;

[0084] 6. Compile into WebAssembly file through Emscripten;

[0085] 7. Users send entity and component display requirements through HTTP or HTTPS in the Web / mobile smart terminal application interaction;

[0086] 8.1 Send the corresponding WebAssembly file to the Web or mobile smart terminal application via HTTP or HTTPS;

[0087] 8.2 Send the corresponding lightweight geometry information of entities and components to be displayed to the Web / mobile smart terminal application through WebSocket;

[0088] 9. The dynamic scripting language JavaScript calls the WebAssembly file sent by the server application, and renders and displays the lightweight geometric information corresponding to the entities and components that need to be displayed on the HTML5 page Canvas of the Web or the application of the mobile smart terminal;

[0089] 10. The user's interactive collaboration information on the Web / mobile smart terminal application can be transmitted back to the model collaboration module via WebSocket for corresponding processing.

[0090] Technical explanation:

[0091] OpenGL (English: Open Graphics Library, translated as: Open Graphics Library or "Open Graphics Library") is a cross-language, cross-platform application programming interface (API) for rendering 2D and 3D vector graphics; this interface consists of nearly 350 different function calls, used to draw from simple graphics bits to complex three-dimensional scenes. OpenGL is commonly used in CAD, virtual reality, scientific visualization programs and video game development.

[0092] WebSocket is a protocol for full-duplex communication over a single TCP connection. The WebSocket communication protocol was standardized by IETF as RFC 6455 in 2011 and supplemented by RFC7936. The WebSocket API is also standardized by W3C.

[0093] WebAssembly (abbreviated as Wasm) is a binary instruction format for stack-based virtual machines. Wasm is designed as a portable compilation target for programming languages, supporting the deployment of client and server applications on the Web.

[0094] Emscripten is a complete compiler toolchain for WebAssembly, using LLVM (a framework system for building compilers), with a special focus on speed, size, and the web platform.

Claims

1. A remote online browsing collaborative system for CAD and BIM files, characterized in that It includes a server cluster, a Web / mobile smart terminal, a model parsing module, a model processing module, a model graphics rendering module, and a model Web / mobile smart terminal application, as well as a model original system data entity and component library for storing original system data entities and components, and a model own system data geometry library for storing converted geometry; Server cluster side: including but not limited to multiple server clusters; Web / mobile smart terminals: including but not limited to web browsers, smart phones, and tablets; Web / mobile smart terminal application: browser application or mobile smart terminal application; Model parsing module: used to parse the original system data entities and components of the imported CAD / BIM design drawings, and store the parsed entities, components, and topological relationships of components in the database to provide input sources for subsequent model processing modules; Model processing module: Use OpenGL technology to triangulate and lighten the model into geometric bodies, including the model's geometric data and attributes, spatial non-geometric information, and store them in the library, while providing the function of storing custom components in the library; Model graphics rendering module: obtains the corresponding data required for display according to the component type, including the coordinates of the component entity vertices, the color of the graphic entity, the text description and text format corresponding to the text entity, the radius and radian corresponding to the arc entity, and the geometric topological relationship between each entity and component; Model collaboration module: responsible for the compression, transmission, and control of the data required for the model to be displayed in the mobile smart terminal application, as well as real-time communication with the mobile smart terminal application through WebSocket, thereby realizing the collaborative functions of annotation and review; Web / mobile smart terminal application module: that is, collaborative work of browsing and annotating CAD / BIM files based on the web or mobile smart terminals; Model original system data entity and component library: used to store original system data entities and components; Model's own system data geometry library: The model's own system data geometry library stores the converted geometry, and can also manually add custom system geometry.

2. A CAD and BIM file remote online browsing collaborative system according to claim 1, characterized in that The specific workflow of the model parsing module is as follows: a1: Use openGl technology to build the basic application structure, including basic space scenes, 3D renderers, and visualization camera components, which are used to create space containers with 3D coordinates; a2: Extract basic dimensional parameters of various components based on industry design specifications and imported CAD / BIM design drawings to build data entities and component libraries, determine the geometric topological relationship between components, and output them according to structural form and hierarchy classification, and store and update them to the original system data entity and component library of the model.

3. A CAD and BIM file remote online browsing collaborative system according to claim 1, characterized in that The specific workflow of the model processing module is as follows: b1: Use opengGl technology to triangulate data entities and components into lightweight geometric bodies; b2: Update the geometric topological relationship between the components and store them together with the lightweight geometric bodies into the model's own system data geometric body library; b3: In step b2, custom components can also be added to the component library by inputting structural parameters through a visual interface.

4. A CAD and BIM file remote online browsing collaborative system according to claim 1, characterized in that The specific workflow of the model graphics rendering module is as follows: c1: Convert CAD / BIM coordinate system and instance coordinate point mapping into openGl coordinate axis expression; c2: Apply material to the model, set the model's environmental characteristics and lighting and other technical specification parameters according to requirements.

5. A CAD and BIM file remote online browsing collaborative system according to claim 1, characterized in that The specific workflow of the model collaboration module is as follows: d1: Determine whether the number of CAD / BIM entities and file size exceed the set value. If they exceed the set value, compress and compile them into a binary WebAssembly file, and then transmit the data to the WEB and mobile smart terminal applications, including: d101: Define N data volumes as the conversion setting value, and determine whether to enable compression by judging the number of CAD / BIM entities and data volume; d102: The compression process specifically includes compressing the graphic data into a specific json expression format using specific rules, further compressing the data stream file using the open source compression algorithm zip, and uploading the WebAssembly file after conversion into binary format to the front end; wherein the converted json data realizes data compression by storing classified entity data and the mapping relationship between entities and various parameter types; wherein the classified entities include entity type, color classification, coordinate point classification, text expression classification, and entity topology classification; d2: The Web / mobile intelligent terminal application module displays the model graphics rendering information sent by the model collaboration module, and transmits the interactive annotations and review information back to the model collaboration module.

6. A remote online browsing collaborative method for CAD and BIM files, characterized by: The steps are as follows, 1) Import the CAD / BIM graphic source files into the model parsing module of the server cluster application; 2) The model parsing module parses the imported CAD / BIM graphic original files into original system data entities and components, and serializes them into the model original system data entity and component library; 3) Send the original system data entities and components to the model processing module; 4) Then the model processing module uses OpenGL to perform technical geometric triangulation on the newly stored original system data entities, component library data entities, and components, lightweight them into geometric bodies, and serialize them into the model's own system geometry library; 5) 2D and 3D rendering of lightweight geometry that needs to be displayed based on OpenGL or OpenGL; 6) Compile into a WebAssembly file that can be referenced by the dynamic scripting language JavaScript through Emscripten software; 7) Users send entity and component display requirements through HTTP or HTTPS in Web / mobile smart terminal application interaction; 8) The model collaboration module sends the corresponding WebAssembly file to the Web and mobile smart terminal applications via HTTP or HTTPS; The model collaboration module sends the corresponding lightweight geometry information of entities and components that need to be displayed to the Web / mobile smart terminal application through WebSocket; 9) JavaScript calls the WebAssembly file sent by the server cluster application, and renders and displays the lightweight geometric information corresponding to the entities and components that need to be displayed on the HTML5 page Canvas of the Web or the application of the mobile smart terminal; 10) The user's interactive collaboration information in the Web / mobile smart terminal application can be transmitted back to the server cluster model collaboration module through WebSocket for corresponding processing.

Citation Information

Patent Citations

  • Engineering quality supervision and early warning system and method based on BIM model

    CN109784758A

  • BIM-based multi-dimensional modular review design collaboration platform

    CN109801040A