Webpage-side bridge construction progress simulation method and system based on IFC standard
By lightly processing IFC files and extracting progress information, combined with Gantt chart display, the problem of construction progress simulation and visualization of web pages is solved, the linkage between BIM model and Gantt chart is realized, and the efficiency and user experience of construction project management are improved. .
Patent Information
- Application Number
- CN202411498874.4
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-10-24
- Publication Date
- 2025-01-10
AI Technical Summary
In the field of construction engineering, it is difficult for the existing technology to realize construction progress simulation and visualization based on IFC standards on the web page. This is mainly because the BIM model file is huge, the progress information is not closely related to the model, and the need to install specific software or plug-ins, which restricts users Convenience and experience.
By processing IFC files lightly, the progress information is extracted and saved as JSON files, combined with Gantt chart display, the model creation and progress planning association are used to use software that supports IFC standards such as Autodesk Revit and BlenderBIM, and the progress information is extracted using Python and IfcOpenShell libraries. Use the ThatOpen library to lighten the model and render the web page to realize the linkage display of the BIM model and the Gantt chart.
The problem of visualization and interaction of construction progress information on the web page is solved, the efficiency and convenience of construction project management is improved, and the dynamic simulation and visual display of construction progress without the need to install additional software is realized.
Smart Images

Figure CN119293927A_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the field of construction engineering information technology, and in particular to a web-based bridge construction progress simulation method and system based on the IFC standard. Background Art
[0002] In the field of construction engineering, with the continuous development of information technology, Building Information Modeling (BIM) has become an important tool to improve project management efficiency and construction quality. BIM technology provides a collaborative work platform for all project participants by creating a three-dimensional model containing all the information of the construction project. Among them, the IFC (Industry Foundation Classes) standard, as the basis for BIM data exchange and sharing, provides the possibility for interoperability between different BIM software.
[0003] However, in the current BIM application practice, although the IFC standard has been widely used, there are still a series of challenges in implementing construction progress simulation and visualization based on the IFC standard on the web. First, BIM models usually contain a large amount of geometric and non-geometric information, which leads to large file sizes and is difficult to load and render directly on the web. Secondly, the connection between construction progress information and BIM models is often not tight enough, making it difficult to dynamically display and track the construction progress on the web. Finally, existing construction progress simulation methods usually require the installation of specific software or plug-ins on the client, which limits the user's convenience and usage experience. Summary of the invention
[0004] The purpose of the present invention is to provide a web-based bridge construction progress simulation method and system based on the IFC standard to solve the problems existing in the prior art and improve the efficiency and convenience of construction project management by lightweight processing of IFC files, extracting progress information, drawing Gantt charts, and realizing the linkage display of BIM models and Gantt charts.
[0005] To achieve the above object, the technical solution adopted by the present invention is:
[0006] A web-based bridge construction progress simulation method based on the IFC standard includes the following steps:
[0007] Use BIM modeling software that supports the IFC standard to create BIM models and export them as IFC files;
[0008] Develop construction schedules for construction projects using project management software;
[0009] Associating the construction schedule with the components in the BIM model to integrate progress information;
[0010] Extract the progress information from the integrated IFC file and save it as a JSON file suitable for web pages;
[0011] Read the progress information of the JSON file on the front end of the web page, draw the construction progress Gantt chart based on the progress information and update it in real time;
[0012] The IFC file is lightweighted and the lightweight BIM model is displayed on the web page. Combined with the construction progress Gantt chart, the components that should be displayed are calculated and displayed to realize the visualization of the construction progress on the web page.
[0013] The method of creating a BIM model using BIM modeling software supporting the IFC standard and exporting the model as an IFC file includes:
[0014] Using Autodesk Revit as the BIM modeling software, creating a BIM model;
[0015] Export the IFC file of the BIM model from Autodesk Revit.
[0016] The construction schedule of the construction project is formulated by project management software, including:
[0017] Design construction schedules for building projects using Microsoft Project software.
[0018] The construction schedule is associated with the components in the BIM model to achieve the integration of progress information, including:
[0019] Create a new work schedule in BlenderBIM and name it, then import the construction schedule;
[0020] Added schedule columns including start time, end time and duration in the IfcTaskTime entity;
[0021] Associate specific components to each subtask in the Blender viewport, select the specific component associated with the work task, and add it to the output;
[0022] Use Animation Tools to create construction progress animations to check whether the schedule and its associated components are accurate.
[0023] The process of extracting progress information from the integrated IFC file and saving it as a JSON file suitable for a web page includes:
[0024] Use Python language combined with ifcopenshell library to read IFC files into memory;
[0025] Extract the IfcTask entity and its subtasks associated with the schedule from the memory through the IfcRelAssignsToControl relationship entity;
[0026] The nested relationship between the extracted tasks is established through the IfcRelNests relationship entity, and the logical relationship between these tasks is established through the IfcRelSequence relationship entity;
[0027] Extract the component entities associated with each task through the IfcRelAssignsToProduct relationship entity, and store the information of these component entities in an array;
[0028] Define a template for extracting progress information, and output the extracted construction progress information as a JSON file according to the template.
[0029] The process of reading the progress information of the JSON file on the front end of the webpage, drawing the construction progress Gantt chart according to the progress information and updating it in real time includes:
[0030] Integrate the JSON file containing the construction progress information into the front-end project, or pass it to the front-end through the back-end service;
[0031] In the front-end project, use TypeScript to define the data structure representing the task, and use the Fetch API to read and parse the progress information from the JSON file;
[0032] Convert the parsed progress information into the data structure required for Gantt chart drawing, configure the style and information included in the Gantt chart, and use the 4d-gantt library to build and draw the Gantt chart in the front-end component;
[0033] Write a Gantt chart update function. When the date update is detected, the function only updates the date timeline data of the Gantt chart, redraws it, and adjusts the display position of the Gantt chart.
[0034] The lightweight processing of the IFC file and display of the lightweight BIM model on the web page include:
[0035] Use ThatOpen library to convert IFC files into fragment files containing geometric information and JSON files containing non-geometric information.
[0036] The ThatOpen library is used to read the fragment file containing geometric information, parse the fragment file to generate a Mesh object, and add the generated Mesh object to the 3D scene for rendering, so as to dynamically display the BIM model on the web page.
[0037] The above is combined with the construction progress Gantt chart to calculate and display the components that should be displayed currently, so as to realize the construction progress visualization on the web page, including:
[0038] Use the state management library Pinia to define a state specifically used to store the current progress, and implement a two-way binding between the state and the Gantt chart component;
[0039] Record the current date and read it in the model display view. Combined with the progress information in the BIM model data, write a function to dynamically calculate and identify the tasks that have been completed before the current date.
[0040] Based on the parsed progress information, establish the association mapping between the construction tasks and the BIM model components, and obtain the GlobalId list of the associated components that should be displayed at the current simulation time point through the association mapping;
[0041] Use GlobalId as a unique identifier to find the corresponding geometric mesh information in the BIM model data;
[0042] By utilizing the visibility control mechanism of the ThatOpen library, the visibility of corresponding components in the BIM model can be quickly switched according to the current simulation time point, and only components associated with completed or ongoing tasks can be displayed, thereby achieving dynamic visualization of construction progress simulation on the web page.
[0043] A web-based bridge construction progress simulation system based on the IFC standard, comprising:
[0044] Model creation and export module, which uses BIM modeling software that supports the IFC standard to create BIM models and export them as IFC files;
[0045] Schedule planning module, which uses project management software to formulate construction schedules for construction projects;
[0046] The progress information association module associates the construction schedule with the components in the BIM model to achieve the integration of progress information;
[0047] A progress information extraction module extracts progress information from the integrated IFC file and saves it as a JSON file suitable for web pages;
[0048] The web front-end display module reads the progress information of the JSON file on the web front-end, draws the construction progress Gantt chart based on the progress information and updates it in real time;
[0049] The progress visualization module processes the IFC file in a lightweight way and displays the lightweight BIM model on the web page. Combined with the construction progress Gantt chart, it calculates and displays the components that should be displayed currently, thus realizing the visualization of the construction progress on the web page.
[0050] A computer-readable storage medium stores a computer program, wherein the computer program implements the above method steps when executed by a processor.
[0051] Compared with the prior art, the present invention has the following beneficial effects:
[0052] 1. Through BlenderBIM, the construction schedule is associated with the specific components in the BIM model, realizing the deep integration of construction progress information and BIM model; the construction progress information is extracted from the IFC file using Python language and IfcOpenShell library, saved as a JSON format file, and the associated component information in the progress information is used to find the corresponding geometric mesh information in the BIM model, which is displayed in the form of a 3D model on the web page and updated synchronously with the Gantt chart, solving the problem of visual display and interaction of construction progress information on the web page based on the IFC standard;
[0053] 2. Extract the progress information from the IFC file and save it as a JSON file. JSON is a lightweight data exchange format that is easy to read and process on the front-end page.
[0054] 3. By drawing the Gantt chart, the construction schedule is intuitively displayed. By linking the Gantt chart with the BIM model, dynamic simulation based on time progress is realized. The construction progress status at different time points can be intuitively seen, which enhances user experience and interactivity;
[0055] 4. Use ThatOpen library to lightweight IFC files, dividing them into fragment files containing geometric information and JSON files containing non-geometric information, reducing the burden of loading BIM models on the web page, improving loading speed and rendering effect, and using WebGL technology to render lightweight BIM models on the web page, and use Gantt charts to simulate construction progress. Users do not need to install additional software or plug-ins, and can view project progress in the browser. BRIEF DESCRIPTION OF THE DRAWINGS
[0056] In order to more clearly illustrate the embodiments of the present invention or the technical solutions in the prior art, the drawings required for use in the embodiments or the description of the prior art will be briefly introduced below. Obviously, the drawings described below are only some embodiments of the present invention. For ordinary technicians in this field, other drawings can be obtained based on these drawings without paying creative work.
[0057] Figure 1 This is a flow chart of an overall method for 4D progress simulation based on the IFC standard web page in one embodiment;
[0058] Figure 2 is a schedule diagram produced using Microsoft Project in one embodiment;
[0059] Figure 3 is a schematic diagram of importing a schedule into BlenderBIM in one embodiment;
[0060] Figure 4 is a schematic diagram of selecting a component in a BlenderBIM viewport and adding it to the Outputs of a related subtask in one embodiment;
[0061] Figure 5 This is a schematic diagram of using BlenderBIM to create a construction animation in one embodiment.
[0062] Figure 6 is a schematic diagram of progress information integrated in an example IFC file in one embodiment;
[0063] Figure 7 This is a schematic diagram of JSON progress information extracted using Python language in one embodiment;
[0064] Figure 8 This is a schematic diagram of a Gantt chart template made using a Vue component in one embodiment;
[0065] Fig. 9 is a schematic diagram showing progress information in non-geometric data of an IFC file after model lightweighting in one embodiment;
[0066] Fig.10 It is a schematic diagram of using Pinia to store progress information and current time provided by an embodiment;
[0067] Fig.11 This is an effect diagram showing the progress of a BIM model in different time periods provided by an embodiment. DETAILED DESCRIPTION
[0068] The technical solution of the present invention will be described clearly and completely below in conjunction with the accompanying drawings of the present invention. Obviously, the described embodiments are only part of the embodiments of the present invention, not all of the embodiments. Based on the embodiments of the present invention, all other embodiments obtained by ordinary technicians in this field without creative work are within the scope of protection of the present invention.
[0069] The following is an explanation of the terms in this embodiment.
[0070] The IFC (Industry Foundation Classes) standard is an important standard in the field of Building Information Modeling (BIM), developed and maintained by the international organization buildingSMART. The IFC standard is a data model and file format standard used to describe, exchange and share information in the architecture, engineering and construction (AEC) industry. The standard aims to provide a common language that enables seamless information exchange between different software applications, thereby promoting collaboration among all parties involved in the AEC industry.
[0071] Ifcopenshell is an open source software library specifically designed for processing IFC files. Ifcopenshell can run on a variety of operating systems, including Windows, macOS, and Linux, and can be developed using Python or C++. At the same time, the Ifcopenshell project also provides an open source plug-in based on Blender - BlenderBIM, which adds the ability to process BIM data to Blender. Through the plug-in, IFC data can be managed and edited directly within Blender, and a complete set of BIM tools can be used to achieve from basic model creation to more complex BIM workflows, such as project planning, design coordination, drawing generation, schedule simulation, cost estimation, etc.
[0072] ThatOpen is a collection of open source javascript libraries from That Open Company, mainly used for IFC file parsing, web-side display and operation. It mainly includes the following parts: engine_web-ifc library, used to read and write ifc files at native speed; engine_components library, a collection of BIM tools based on Three.js and other libraries, which can be used to develop web-side BIM applications; engine_fragment library, an efficient geometry system built on Three.js, which can easily represent large amounts of BIM data and can be used for lightweight BIM models.
[0073] In the first aspect of this application, Figure 1 As shown, a web-based bridge construction progress simulation method based on the IFC standard is provided, comprising the following steps S1-S6:
[0074] S1. Create a BIM model using BIM modeling software that supports the IFC standard and export it as an IFC file.
[0075] Among them, there are many BIM modeling software that support IFC standards on the market, including commercial software such as Autodesk Revit, ArchiCAD, Tekla Structures, SketchUp, etc., as well as open source software such as FreeCAD, Blender BIM, etc.
[0076] S2. Develop a construction schedule for the construction project through project management software.
[0077] S3. Associate the construction schedule with the components in the BIM model to integrate progress information.
[0078] S4. Extract the progress information from the integrated IFC file and save it as a JSON file suitable for web pages.
[0079] S5. Read the progress information of the JSON file on the front end of the web page, draw a Gantt chart of the construction progress according to the progress information, and update it in real time.
[0080] S6. Lightweight IFC files are processed and the lightweight BIM model is displayed on the web page. Combined with the construction progress Gantt chart, the components that should be displayed are calculated and displayed to realize the visualization of the construction progress on the web page.
[0081] The following takes the cable-stayed bridge construction project as an example and describes in detail the specific implementation methods of each step in conjunction with the accompanying drawings.
[0082] In step S1, the BIM model is created using BIM modeling software that supports the IFC standard and exported as an IFC file, including the following steps S1.1-S1.2:
[0083] S1.1. Use Autodesk Revit as the BIM modeling software to create a cable-stayed bridge BIM model. It is necessary to create basic information of the cable-stayed bridge BIM model, including building components and component properties.
[0084] S1.2. Export the IFC file of the cable-stayed bridge BIM model from Autodesk Revit. The exported IFC file includes all geometric and non-geometric information of the cable-stayed bridge BIM model, such as the size, location, material and properties of the components, for subsequent construction progress simulation.
[0085] In step S2, if Figure 2 As shown, the method of formulating a construction schedule for a construction project through project management software includes: using Microsoft Project software to design a construction schedule for a cable-stayed bridge construction project.
[0086] Specifically, Microsoft Project is a professional project management software that can develop detailed project plans, allocate resources, track progress, etc. The process of using Microsoft Project to develop a construction schedule includes: creating project files, adding tasks, setting the relationship between tasks, setting predecessor tasks, duration, start time and end time, etc.
[0087] In step S3, the construction schedule is associated with the components in the BIM model to achieve the integration of progress information, including the following steps S3.1-S3.4:
[0088] S3.1, if Figure 3 As shown, create a new work schedule in BlenderBIM and name it, and import the construction schedule. BlenderBIM software is used as an associated tool. BlenderBIM is an open source software that supports the IFC standard and can open, edit and modify IFC files.
[0089] For example, on the BlenderBIM interface, select the “Work Schedule” function, create a new schedule and name it “BCW”, and import the pre-prepared cable-stayed bridge construction schedule into the newly created “BCW” schedule.
[0090] S3.2, such as Figure 4 As shown, in the "BCW" schedule, add schedule columns Schedule Columns, including the start time ScheduleStart, end time ScheduleFinish, and duration ScheduleDuration in the IfcTaskTime entity.
[0091] S3.3, if Figure 4 As shown, in the "BCW" schedule, select each subtask one by one, associate specific components for each subtask in the Blender viewport, select the specific components associated with the work task, and add them to the output.
[0092] For example, select the IfcPile entity in the substructure as the relevant component of the foundation construction task. By adding the selected component to the output of the selected subtask, the association relationship between the subtask and the component is established. In this way, in the subsequent progress animation, when a subtask is executed, its associated components will be displayed accordingly.
[0093] S3.4, such as Figure 5As shown, in BlenderBIM, according to the information of the "BCW" schedule and its associated components, the Animation Tools tool is used to create a construction progress animation to check the accuracy of the schedule and its associated components.
[0094] In step S4, the process of extracting progress information from the integrated IFC file and saving it as a JSON file suitable for a web page includes the following steps S4.1-S4.5:
[0095] S4.1, if Figure 6 and Figure 7 As shown, use Python language combined with ifcopenshell library to read IFC files into memory.
[0096] Specifically, the IfcOpenShell library is an open source IFC file parsing tool installed in the Python language that can read and write IFC format files. By using the functions provided by the IfcOpenShell library, IFC files can be read into memory.
[0097] S4.2. Extract the IfcTask entity and its subtasks associated with the schedule from the memory through the IfcRelAssignsToControl relationship entity.
[0098] Specifically, in the read IFC file object, traverse the IfcRelAssignsToControl relationship entity, and extract the corresponding IfcTask entity and its subtasks through the relationship entity. The IfcTask entity contains specific information of the construction schedule, such as task name, start time, end time, etc.
[0099] S4.3. Establish a nested relationship between the extracted tasks through the IfcRelNests relationship entity, and establish a logical relationship between these tasks through the IfcRelSequence relationship entity.
[0100] Specifically, the IfcRelNests relationship entity is traversed to establish the nested relationship between tasks, which represents the hierarchical structure between tasks, such as a large task contains multiple subtasks. The IfcRelSequence relationship entity is traversed to establish the logical relationship between tasks, which represents the sequence and dependency between tasks.
[0101] S4.4. Extract the component entities associated with each task through the IfcRelAssignsToProduct relationship entity, and store the information of these component entities in an array.
[0102] Specifically, the IfcRelAssignsToProduct relationship entity is traversed to extract the associated component entity of the corresponding task, thereby associating the task with the specific component in the cable-stayed bridge BIM model. The extracted component information, such as GlobalId, ExpressId, Name, Type and other attributes, is stored in an array or other data structure for subsequent processing.
[0103] S4.5. Define a template for extracting progress information, and output the extracted construction progress information as a JSON file according to the template.
[0104] Specifically, a JSON format template is defined based on the extracted progress information and associated component information. The template includes necessary information fields, such as the GlobalId, Name, Start, and End of the task and the GlobalId, ExpressId, Name, and Type of the associated component. The extracted information is output as a JSON format file according to the defined template. In this way, a JSON file containing construction progress information is obtained.
[0105] In step S5, the progress information of the JSON file is read on the front end of the web page, and a construction progress Gantt chart is drawn according to the progress information and updated in real time, including the following steps S5.1-S5.4:
[0106] S5.1. Integrate the JSON file containing the construction progress information into the front-end project, or pass it to the front-end through the back-end service.
[0107] S5.2. In the front-end project, use TypeScript to define the data structure representing the task, and read and parse the progress information from the JSON file through the Fetch API.
[0108] Specifically, in the front-end project, a Task class is defined through TypeScript, which contains all the task information required by the Gantt chart, such as the task name, start time, end time, etc. Then, the Fetch API is used to read this JSON file, parse its content, and convert the progress information into a front-end JavaScript object for subsequent use.
[0109] S5.3. Convert the parsed progress information into the data structure required for drawing the Gantt chart, configure the style of the Gantt chart and the information contained in it, and use the 4d-gantt library to build and draw the Gantt chart in the front-end component.
[0110] Specifically, Figure 8As shown, first, the key fields in the progress information are formatted and reorganized according to the display requirements of the Gantt chart, and converted into the data structure required for Gantt chart drawing. Then the componentization feature of the Vue framework is used to encapsulate the Gantt chart function. In the mounted life cycle hook of the component, a GanttChart class is instantiated, and the Gantt chart instance is created by calling the API provided by the Gantt chart drawing library 4d-gantt, and then the Gantt chart columns (such as task name, start time, end time, etc.), style (such as color, font size, etc.) and other related options are configured. After that, the ganttChart.draw() method is called to render the corresponding Gantt chart on the front-end page according to the converted data structure and configuration options.
[0111] S5.4. Write a Gantt chart update function. When the date update is detected, the function only updates the date timeline data of the Gantt chart and redraws it, and adjusts the display position of the Gantt chart.
[0112] Specifically, in order to dynamically update the Gantt chart, write an update function that can monitor the change of the date, then recalculate the data in the Gantt chart based on the new date, and redraw it. In the update function, only the date timeline data should be updated to avoid unnecessary DOM operations on the entire Gantt chart, so as to reduce the repeated deletion and creation of HTML elements, thereby improving the responsiveness and fluency of the user interface.
[0113] Through step S5, an interactive Gantt chart is implemented on the webpage, which can display and track the construction progress of the building project. At the same time, through the linkage between the Gantt chart and the cable-stayed bridge BIM model, the cable-stayed bridge BIM model components associated with specific construction tasks can be viewed.
[0114] In step S6, the lightweight processing of the IFC file and display of the lightweight BIM model on the web page includes the following steps S6.1-S6.2:
[0115] S6.1. Use ThatOpen library to lightweight IFC files and convert them into fragment files containing geometric information and JSON files containing non-geometric information.
[0116] Specifically, Fig. 9 As shown in the figure, the original IFC file is processed by the lightweight tool provided by the ThatOpen library and converted into two files: a fragment file containing geometric information and a JSON file containing non-geometric information, thereby significantly reducing the file size and facilitating fast loading and rendering in a network environment.
[0117] S6.2. Use ThatOpen library to read the fragment file containing geometric information, parse the fragment file to generate a Mesh object, add the generated Mesh object to the 3D scene for rendering, and dynamically display the cable-stayed bridge BIM model on the web page.
[0118] Specifically, use Vue components to encapsulate the display function of the BIM model. In the mounted lifecycle hook of the Vue component, use Three.js to create a 3D scene, camera, and renderer. Use the ThatOpen library to read and parse the information in the fragment file and convert it into a Mesh object that Three.js can understand. Add the Mesh object parsed by the ThatOpen library to the Three.js 3D scene for rendering. Configure the renderer in Three.js to use WEBGL technology to render the cable-stayed bridge BIM model to the web page, so that the geometric form of the cable-stayed bridge BIM model can be intuitively viewed on the web page.
[0119] In step S6, the construction progress Gantt chart is combined to calculate and display the components that should be displayed currently, so as to realize the visualization of the construction progress on the web page, including S6.3-S6.7:
[0120] S6.3. Use the state management library Pinia to define a state specifically for storing the current progress, and implement a two-way binding between the state and the Gantt chart component.
[0121] Specifically, Fig.10 As shown in the figure, Pinia is used as the state management library, and a state is defined in the Pinia store to store the current date and construction progress information, ensuring that the state in the Pinia store is bidirectionally bound to the Gantt chart component. Therefore, when the progress is updated, the Gantt chart and the cable-stayed bridge BIM model will automatically reflect the latest state.
[0122] S6.4. Record the current date and read the date in the model display view. Combined with the progress information in the cable-stayed bridge BIM model data, write a function to dynamically calculate and identify the tasks that have been completed before the current date.
[0123] Specifically, write a function that reads the current date from the Pinia store and compares it with the task start and end dates in the progress information, and marks all tasks that end before the current date as completed.
[0124] Correspondingly, in the Gantt chart, when a progress status update is detected, the Gantt chart is updated to reflect the latest completed tasks.
[0125] Correspondingly, in the cable-stayed bridge BIM model, when a progress update is detected, the display status of the corresponding components in the cable-stayed bridge BIM model is updated according to the completed tasks.
[0126] S6.5. Based on the parsed progress information, an association mapping is established between the construction tasks and the components of the cable-stayed bridge BIM model, and a list of GlobalIds of the associated components that should be displayed at the current simulation time point is obtained through the association mapping.
[0127] Specifically, based on the parsed progress information, a mapping table is established to associate the construction tasks with specific components in the cable-stayed bridge BIM model through GlobalId. Each task clearly corresponds to one or more components in the model.
[0128] S6.6. Use GlobalId as a unique identifier to search for the corresponding geometric mesh information in the cable-stayed bridge BIM model data.
[0129] S6.7. Utilize the visibility control mechanism of ThatOpen library to quickly switch the visibility of corresponding components in the BIM model of the cable-stayed bridge according to the current simulation time point, and only display components associated with completed or ongoing tasks, thereby achieving dynamic visualization of construction progress simulation on the web page.
[0130] Specifically, Fig.11 As shown in the figure, the visibility control mechanism provided by ThatOpen library is used to dynamically switch the visibility of components in the cable-stayed bridge BIM model according to the calculated component list. In the cable-stayed bridge BIM model, the component list that should be displayed is calculated according to the current date and progress information. For completed tasks, the corresponding components are set to be visible, and for tasks that have not started, the corresponding components are hidden.
[0131] Through the above steps, the BIM model of the cable-stayed bridge and the Gantt chart are closely linked. The construction progress can be viewed in real time on the web page, and the completion status of each task and the status of related components can be understood in detail through the interaction between the Gantt chart and the BIM model of the cable-stayed bridge.
[0132] A second aspect of the present application provides a system for implementing progress simulation on a web page based on the IFC standard, including:
[0133] Model creation and export module, which uses BIM modeling software that supports the IFC standard to create BIM models and export them as IFC files;
[0134] Schedule planning module, which uses project management software to formulate construction schedules for construction projects;
[0135] The progress information association module associates the construction schedule with the components in the BIM model to achieve the integration of progress information;
[0136] A progress information extraction module extracts progress information from the integrated IFC file and saves it as a JSON file suitable for web pages;
[0137] The web front-end display module reads the progress information of the JSON file on the web front-end, draws the construction progress Gantt chart based on the progress information and updates it in real time;
[0138] The progress visualization module processes the IFC file in a lightweight way and displays the lightweight BIM model on the web page. Combined with the construction progress Gantt chart, it calculates and displays the components that should be displayed currently, thus realizing the visualization of the construction progress on the web page.
[0139] According to a third aspect of the present application, a computer-readable storage medium is provided, wherein the computer-readable storage medium stores a computer program, wherein the computer program implements the above-mentioned method steps when executed by a processor.
[0140] It should be understood that the size of the serial numbers of the steps in the above embodiments does not mean the order of execution. The execution order of each process should be determined by its function and internal logic, and should not constitute any limitation on the implementation process of the embodiments of the present application.
[0141] In the description of the present specification and the appended claims, the terms "first", "second", "third", etc. are only used to distinguish descriptions and cannot be understood as indicating or suggesting relative importance. It should also be understood that although the terms "first", "second", etc. are used to describe various elements in some embodiments of the present application in the text, these elements should not be limited by these terms. These terms are only used to distinguish one element from another element. For example, the first table can be named as the second table, and similarly, the second table can be named as the first table without departing from the scope of the various described embodiments. The first table and the second table are both tables, but they are not the same table.
[0142] References to "one embodiment" or "some embodiments" etc. described in the specification of this application mean that one or more embodiments of the present application include specific features, structures or characteristics described in conjunction with the embodiment. Therefore, the statements "in one embodiment", "in some embodiments", "in some other embodiments", "in some other embodiments", etc. that appear in different places in this specification do not necessarily refer to the same embodiment, but mean "one or more but not all embodiments", unless otherwise specifically emphasized in other ways. The terms "including", "comprising", "having" and their variations all mean "including but not limited to", unless otherwise specifically emphasized in other ways.
[0143] Although embodiments of the present invention have been shown and described, it will be appreciated by those skilled in the art that various changes, modifications, substitutions and variations may be made to the embodiments without departing from the principles and spirit of the present invention, and that the scope of the present invention is defined by the appended claims and their equivalents.
Claims
1. A web-based bridge construction progress simulation method based on the IFC standard, characterized in that: The following steps are involved: Use BIM modeling software that supports the IFC standard to create BIM models and export them as IFC files; Develop construction schedules for construction projects using project management software; Associating the construction schedule with the components in the BIM model to integrate progress information; Extract the progress information from the integrated IFC file and save it as a JSON file suitable for web pages; Read the progress information of the JSON file on the front end of the web page, draw the construction progress Gantt chart based on the progress information and update it in real time; The IFC file is lightweighted and the lightweight BIM model is displayed on the web page. Combined with the construction progress Gantt chart, the components that should be displayed are calculated and displayed to realize the visualization of the construction progress on the web page.
2. According to the web-based bridge construction progress simulation method based on the IFC standard of claim 1, it is characterized in that: The method of creating a BIM model using BIM modeling software supporting the IFC standard and exporting the model as an IFC file includes: Using Autodesk Revit as the BIM modeling software, creating a BIM model; Export the IFC file of the BIM model from Autodesk Revit.
3. The web-based bridge construction progress simulation method based on the IFC standard according to claim 1 is characterized in that: The construction schedule of the construction project is formulated by project management software, including: Design construction schedules for building projects using Microsoft Project software.
4. According to the web-based bridge construction progress simulation method based on the IFC standard of claim 1, it is characterized in that: The construction schedule is associated with the components in the BIM model to achieve the integration of progress information, including: Create a new work schedule in BlenderBIM and name it, then import the construction schedule; Added schedule columns including start time, end time and duration in the IfcTaskTime entity; Associate specific components to each subtask in the Blender viewport, select the specific component associated with the work task, and add it to the output; Use Animation Tools to create construction progress animations to check whether the schedule and its associated components are accurate.
5. The web-based bridge construction progress simulation method based on the IFC standard according to claim 1 is characterized in that: The process of extracting progress information from the integrated IFC file and saving it as a JSON file suitable for a web page includes: Use Python language combined with ifcopenshell library to read IFC files into memory; Extract the IfcTask entity and its subtasks associated with the schedule from the memory through the IfcRelAssignsToControl relationship entity; The nested relationship between the extracted tasks is established through the IfcRelNests relationship entity, and the logical relationship between these tasks is established through the IfcRelSequence relationship entity; Extract the component entities associated with each task through the IfcRelAssignsToProduct relationship entity, and store the information of these component entities in an array; Define a template for extracting progress information, and output the extracted construction progress information as a JSON file according to the template.
6. The web-based bridge construction progress simulation method based on the IFC standard according to claim 1 is characterized in that: The process of reading the progress information of the JSON file on the front end of the webpage, drawing the construction progress Gantt chart according to the progress information and updating it in real time includes: Integrate the JSON file containing the construction progress information into the front-end project, or pass it to the front-end through the back-end service; In the front-end project, use TypeScript to define the data structure representing the task, and use the Fetch API to read and parse the progress information from the JSON file; Convert the parsed progress information into the data structure required for Gantt chart drawing, configure the style and information included in the Gantt chart, and use the 4d-gantt library to build and draw the Gantt chart in the front-end component; Write a Gantt chart update function. When the date update is detected, the function only updates the date timeline data of the Gantt chart, redraws it, and adjusts the display position of the Gantt chart.
7. The web-based bridge construction progress simulation method based on the IFC standard according to claim 1 is characterized in that: The lightweight processing of the IFC file and display of the lightweight BIM model on the web page include: Use ThatOpen library to convert IFC files into fragment files containing geometric information and JSON files containing non-geometric information. The ThatOpen library is used to read the fragment file containing geometric information, parse the fragment file to generate a Mesh object, and add the generated Mesh object to the 3D scene for rendering, so as to dynamically display the BIM model on the web page.
8. The web-based bridge construction progress simulation method based on the IFC standard according to claim 1 is characterized in that: The above is combined with the construction progress Gantt chart to calculate and display the components that should be displayed currently, so as to realize the construction progress visualization on the web page, including: Use the state management library Pinia to define a state specifically used to store the current progress, and implement a two-way binding between the state and the Gantt chart component; Record the current date and read it in the model display view. Combined with the progress information in the BIM model data, write a function to dynamically calculate and identify the tasks that have been completed before the current date. Based on the parsed progress information, establish the association mapping between the construction tasks and the BIM model components, and obtain the GlobalId list of the associated components that should be displayed at the current simulation time point through the association mapping; Use GlobalId as a unique identifier to find the corresponding geometric mesh information in the BIM model data; By utilizing the visibility control mechanism of the ThatOpen library, the visibility of corresponding components in the BIM model can be quickly switched according to the current simulation time point, and only components associated with completed or ongoing tasks can be displayed, thereby achieving dynamic visualization of construction progress simulation on the web page.
9. A web-based bridge construction progress simulation system based on the IFC standard, characterized in that: include: Model creation and export module, which uses BIM modeling software that supports the IFC standard to create BIM models and export them as IFC files; Schedule planning module, which uses project management software to formulate construction schedules for construction projects; The progress information association module associates the construction schedule with the components in the BIM model to achieve the integration of progress information; A progress information extraction module extracts progress information from the integrated IFC file and saves it as a JSON file suitable for web pages; The web front-end display module reads the progress information of the JSON file on the web front-end, draws the construction progress Gantt chart based on the progress information and updates it in real time; The progress visualization module processes the IFC file in a lightweight way and displays the lightweight BIM model on the web page. Combined with the construction progress Gantt chart, it calculates and displays the components that should be displayed currently, thus realizing the visualization of the construction progress on the web page.
10. A computer-readable storage medium, characterized in that: The computer-readable storage medium stores a computer program, wherein the computer program implements the method steps of any one of claims 1 to 8 when executed by a processor.
Citation Information
Patent Citations
Building construction progress management platform and method based on BIM-IFC technology
CN106779476A
Construction progress plan optimal making method
CN108596374A
An IFC model storage mode based on Redis and Mongodb
CN109783442A
Engineering project integrated management method and device, computer equipment and storage medium
CN112070482A
lightweight BIM prefabricated part full life cycle comprehensive information management system
CN113722797A
Cited By
BIM modeling method and device based on IFC component template, equipment and medium
CN119989469A