Method and system for generating road BIM model by using Grasshopper and Revit
Through the combination of Grasshopper and Revit software, Rhino plug-in and battery block technology are used to quickly generate road BIM models, solving the problem of inefficiency in generating road models by Revit software, realizing a simple and efficient modeling process.
Patent Information
- Application Number
- CN202310597317.7
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2023-05-22
- Publication Date
- 2025-04-08
- Estimated Expiration
- 2043-05-22
AI Technical Summary
In the prior art, when generating a road BIM model, Revit software causes inefficient modeling due to the many changes in road curves and heights, and requires cumbersome operation and a lot of repetitive labor.
The Grasshopper and Revit software are combined to import CAD drawings through the Rhino.inside plug-in, and the Grasshopper battery block is used to read plane contour lines and elevation symbols, generate road center lines and control points, and generate road space models based on site terrain, and attributes are assigned in Revit to achieve rapid generation of BIM models.
It improves BIM modeling efficiency, reduces repetitive labor and error rates, realizes rapid changes in road models and multiple slope designs, and improves the efficiency of use of Revit software.
Smart Images

Figure CN116702273B_ABST
Abstract
Description
Technical Field
[0001] The present invention belongs to the technical field of building information modeling, and more specifically, relates to a method and system for quickly generating a road BIM model based on Grasshopper and Revit software. Background Art
[0002] At present, most domestic projects still use traditional CAD drawing as a design tool, and the standard for BIM delivery of complete project completion based on BIM technology has just started. Currently, Revit is one of the BIM modeling software. In the process of using Revit software to create BIM models of various architectural disciplines, due to the curves of roads and many height changes, Revit manual modeling has certain limitations, takes a lot of time, and the operation is cumbersome, requires a lot of repetitive work, and affects modeling efficiency.
[0003] Therefore, when BIM technical standards have not yet been popularized and relevant policies have not yet been perfected, developing a technology based on Grasshopper and Revit software to quickly generate road three-dimensional models can save the financial and material resources consumed by manual mold making, which can not only realize the value of BIM technology in engineering applications, but also avoid the time and manpower consumed by fully adopting BIM models compared to CAD drawings. Summary of the invention
[0004] In view of the above defects or improvement needs of the prior art, the present invention proposes a method and system for quickly generating a road three-dimensional model based on Grasshopper and Revit software, which reduces repetitive work, reduces the error rate, improves modeling accuracy and thus improves BIM modeling efficiency.
[0005] To achieve the above object, according to one aspect of the present invention, a method for quickly generating a road BIM model based on Grasshopper and Revit software is provided, comprising:
[0006] S1: Start the Rhino.inside plug-in in Revit software, import the road CAD drawings into the Rhino platform, and read the properties and contents of each layer;
[0007] S2: Use the battery block in Grasshopper to read the road's plane contour line, elevation symbol and elevation mark text;
[0008] S3: Generate a road centerline according to the plane contour line in step S2, and generate a number of control points on the road centerline;
[0009] S4: Calculate the positions of several control points from the elevation symbol to the road centerline through the position of the elevation symbol, and determine the control point corresponding to the elevation value;
[0010] S5: Generate control points identical to the road centerline on the plane contour line, and match them one by one with the control points corresponding to the elevation on the road centerline;
[0011] S6: Based on the numerical value converted from the text marked with the elevation in the battery block in Grasshopper, move the road contour control point matched in S5 in the z-axis direction of the spatial coordinate;
[0012] S7: Use the battery block in Grasshopper to connect the control points moved in S6 in series to obtain the road space contour line;
[0013] S8: Generate a spatial surface through the road spatial contour line in S7, and then use the spatial surface in combination with the original site terrain to generate a road model;
[0014] S9: Use the Rhino.inside plug-in to assign corresponding Revit properties to each part of the road model, and obtain a BIM model with properties and data in the Revit software.
[0015] In some optional implementation schemes, in step S4, the position of the elevation symbol is used to screen the minimum value of the elevation symbol among several control point positions on the road centerline to obtain an accurate and unique control point corresponding to the elevation value.
[0016] In some optional embodiments, before step S6, the method further comprises:
[0017] Use the battery block in Grasshopper to convert the text of the elevation mark read in step S2 into a numerical value.
[0018] According to another aspect of the present invention, a system for quickly generating a road BIM model based on Grasshopper and Revit software is provided, comprising:
[0019] The layer reading module is used to start the Rhino.inside plug-in in the Revit software, import the road CAD drawings into the Rhino platform, and read the properties and contents of each layer;
[0020] The road information acquisition module is used to use the battery block in Grasshopper to read the plane contour line, elevation symbol and text of the elevation mark of the road;
[0021] A control point generation module is used to generate a road centerline according to a plane contour line and generate a number of control points on the road centerline;
[0022] The elevation corresponding control point determination module is used to calculate the positions of several control points on the road centerline from the elevation symbol through the position of the elevation symbol, and determine the control point corresponding to the elevation value;
[0023] A matching module is used to generate control points on the plane contour line that are identical to the road center line, and to match them one by one with the control points corresponding to the elevation on the road center line;
[0024] The control point moving module is used to move the matching road contour control point in the z-axis direction of the spatial coordinate based on the numerical value converted from the text of the elevation mark in the battery block in Grasshopper;
[0025] The road space contour acquisition module is used to connect the moved control points in series using the battery block in Grasshopper to obtain the road space contour;
[0026] The road model generation module is used to generate a spatial surface through the road spatial contour line, and then use the spatial surface in combination with the original site terrain to generate a road model;
[0027] The BIM model generation module is used to use the Rhino.inside plug-in to assign corresponding Revit properties to each part of the road model, and obtain a BIM model with properties and data in the Revit software.
[0028] In some optional implementation schemes, the elevation corresponding control point determination module is used to filter the minimum value of the elevation symbol among several control point positions on the road centerline through the position of the elevation symbol to obtain the control point corresponding to the accurate and unique elevation value.
[0029] In some optional embodiments, the system further comprises:
[0030] The text conversion module is used to convert the text of the elevation mark read into a numerical value using the battery block in Grasshopper.
[0031] According to another aspect of the present invention, a computer-readable storage medium is provided, on which a computer program is stored, and when the computer program is executed by a processor, the steps of any one of the above methods are implemented.
[0032] In general, the above technical solutions conceived by the present invention can achieve the following beneficial effects compared with the prior art:
[0033] 1. The method for quickly generating a road BIM model based on Grasshopper and Revit software is easy to operate. Users only need to use the method to quickly generate a road BIM model based on Grasshopper and Revit software to quickly change the road model in Revit multiple times. The design of multiple road slopes in the same project is more three-dimensional and fast and convenient. This method can repeatedly change the elevation data, compare different schemes to obtain advantages and disadvantages, and effectively improve the use efficiency of Revit software.
[0034] 2. This method of quickly generating road BIM models based on Grasshopper and Revit software realizes the rapid generation of road BIM models, greatly reduces the repetitive work of front-line BIM in-depth designers, reduces the errors of BIM in-depth designers, and thus improves BIM modeling efficiency. BRIEF DESCRIPTION OF THE DRAWINGS
[0035] Figure 1 It is a flowchart of a method for quickly generating a road BIM model based on Grasshopper and Revit software provided by an embodiment of the present invention;
[0036] Figure 2 It is a schematic diagram of reading the properties and contents of each layer through the Rhino platform provided by an embodiment of the present invention;
[0037] Figure 3 It is a textual schematic diagram of a read road plane contour line, elevation symbol and elevation mark provided by an embodiment of the present invention;
[0038] Figure 4 It is a schematic diagram after generating control points on a road plane contour line provided by an embodiment of the present invention;
[0039] Figure 5 is a schematic diagram after control point matching provided by an embodiment of the present invention;
[0040] Figure 6 is a schematic diagram of a road space contour line provided by an embodiment of the present invention;
[0041] Figure 7 is a schematic diagram of a road model provided by an embodiment of the present invention;
[0042] Figure 8 It is a schematic diagram of a BIM model provided by an embodiment of the present invention. DETAILED DESCRIPTION
[0043] In order to make the purpose, technical solutions and advantages of the present invention more clearly understood, the present invention is further described in detail below in conjunction with the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are only used to explain the present invention and are not intended to limit the present invention. In addition, the technical features involved in the various embodiments of the present invention described below can be combined with each other as long as they do not conflict with each other.
[0044] In the examples of the present invention, "first", "second", etc. are used to distinguish different objects rather than to describe a specific order or sequence.
[0045] like Figure 1 As shown, the present invention provides a method for quickly generating a road BIM model based on Grasshopper and Revit software, comprising the following steps:
[0046] (1) Import CAD drawings into the Rhino platform through the Rhino.inside plug-in and read the properties and contents of each layer, such as Figure 2 As shown;
[0047] (2) Use the battery block in Grasshopper to read the road's plane contour line, elevation symbol, and elevation mark text, such as Figure 3 As shown;
[0048] (3) Generate a road centerline based on the plane contour line and generate several control points on the road centerline;
[0049] (4) According to the position of the elevation symbol, calculate the position of several control points on the center line of the road from the elevation symbol, perform minimum value screening, and obtain the control point corresponding to the accurate and unique elevation value, such as Figure 4 As shown;
[0050] (5) Generate control points on the plane contour line that are the same as the road center line, and use the elevation on the road center line to match the control points one by one, which is used to subsequently determine the road space contour line, such as Figure 5 As shown;
[0051] (6) Use the battery block in Grasshopper to convert the text of the elevation mark read in (2) into a numerical value;
[0052] (7) Using the battery block in Grasshopper and the numerical value converted from the text marked with the elevation in (6) as the basis, move the matching road contour control point in the z-axis direction of the spatial coordinate;
[0053] (8) Use the battery block in Grasshopper to connect the control points moved in (7) in series to obtain the road space contour line, as shown in Figure 6 As shown;
[0054] (9) Generate a spatial surface through the road spatial contour line, and then use the spatial surface and the original site terrain to generate a road model, such as Figure 7 As shown;
[0055] (10) Use the Rhino.inside plug-in to assign corresponding Revit properties to each part of the road model, and then you can get a BIM model with properties and data in Revit software, such as Figure 8 shown.
[0056] It should be pointed out that, according to the needs of implementation, the various steps / components described in this application can be split into more steps / components, and two or more steps / components or partial operations of steps / components can be combined into new steps / components to achieve the purpose of the present invention.
[0057] It will be easily understood by those skilled in the art that the above description is only a preferred embodiment of the present invention and is not intended to limit the present invention. Any modifications, equivalent substitutions and improvements made within the spirit and principles of the present invention should be included in the protection scope of the present invention.
Claims
1. A method for quickly generating a road BIM model based on Grasshopper and Revit software, characterized in that: include: S1: Start the Rhino.inside plug-in in Revit software, import the road CAD drawings into the Rhino platform, and read the properties and contents of each layer; S2: Use the battery block in Grasshopper to read the road's plane contour line, elevation symbol and elevation mark text; S3: Generate a road centerline according to the plane contour line in step S2, and generate a number of control points on the road centerline; S4: Calculate the positions of several control points from the elevation symbol to the road centerline through the position of the elevation symbol, and determine the control point corresponding to the elevation value; S5: Generate control points identical to the road centerline on the plane contour line, and match them one by one with the control points corresponding to the elevation on the road centerline; S6: Based on the numerical value converted from the text marked with the elevation in the battery block in Grasshopper, move the road contour control point matched in S5 in the z-axis direction of the spatial coordinate; S7: Use the battery block in Grasshopper to connect the control points moved in S6 in series to obtain the road space contour line; S8: Generate a spatial surface through the road spatial contour line in S7, and then use the spatial surface in combination with the original site terrain to generate a road model; S9: Use the Rhino.inside plug-in to assign corresponding Revit properties to each part of the road model, and obtain a BIM model with properties and data in the Revit software.
2. The method according to claim 1, characterized in that In step S4, the minimum value of the elevation symbol among several control point positions on the road centerline is screened according to the position of the elevation symbol, so as to obtain the control point corresponding to the accurate and unique elevation value.
3. The method according to claim 1 or 2, characterized in that: Before step S6, the method further includes: Use the battery block in Grasshopper to convert the text of the elevation mark read in step S2 into a numerical value.
4. A system for quickly generating road BIM models based on Grasshopper and Revit software, characterized in that: include: The layer reading module is used to start the Rhino.inside plug-in in the Revit software, import the road CAD drawings into the Rhino platform, and read the properties and contents of each layer; The road information acquisition module is used to use the battery block in Grasshopper to read the plane contour line, elevation symbol and text of the elevation mark of the road; A control point generation module is used to generate a road centerline according to a plane contour line and generate a number of control points on the road centerline; The elevation corresponding control point determination module is used to calculate the positions of several control points on the road centerline from the elevation symbol through the position of the elevation symbol, and determine the control point corresponding to the elevation value; A matching module is used to generate control points on the plane contour line that are identical to the road center line, and to match them one by one with the control points corresponding to the elevation on the road center line; The control point moving module is used to move the matching road contour control point in the z-axis direction of the spatial coordinate based on the numerical value converted from the text of the elevation mark in the battery block in Grasshopper; The road space contour acquisition module is used to connect the moved control points in series using the battery block in Grasshopper to obtain the road space contour; The road model generation module is used to generate a spatial surface through the road spatial contour line, and then use the spatial surface in combination with the original site terrain to generate a road model; The BIM model generation module is used to use the Rhino.inside plug-in to assign corresponding Revit properties to each part of the road model, and obtain a BIM model with properties and data in the Revit software.
5. The system according to claim 4, characterized in that The elevation corresponding control point determination module is used to screen the minimum value of the elevation symbol among several control point positions on the road centerline according to the position of the elevation symbol, so as to obtain the control point corresponding to the accurate and unique elevation value.
6. The system according to claim 4 or 5, characterized in that: The system further comprises: The text conversion module is used to convert the text of the elevation mark read into a numerical value using the battery block in Grasshopper.
7. A computer-readable storage medium having a computer program stored thereon, wherein the computer program, when executed by a processor, implements the steps of the method according to any one of claims 1 to 3.
Citation Information
Patent Citations
Quick and refined mountain tunnel BIM building method
CN108563851A
Collaborative design method and system for fine laying of electrical conduit system in laminated slab
CN113808258A