Small But Big Savings in The BIM Workflow - Examples

Dear TeamCAD website visitors,

We continue to cover interesting topics related to the BIM workflow. As I announced in the previous article "BIM Workflow Automation", in this article, I am going to address the savings that can be made by optimizing the BIM workflow.

If you have read my previous article, at the very end, I mentioned that I had attended many presentations announcing the spectacular capabilities of specific digital tools. Since I have not seen them with my own eyes nor seen them working in a real project environment, that is why I was not wholly convinced of the opportunities that were presented at the presentation. In this article, I will do my best to improve the impression and to give solutions to concrete problems that occur in many real projects in a multidisciplinary BIM work environment.

I will start with the most straightforward cases, where it is necessary to accelerate the generation of the BIM discipline model geometry. I am going to deal with the situations where it is required to generate data effectively in the BIM discipline model to optimize the design process of the same discipline. Finally, I am going to elaborate on the establishment of an efficient BIM workflow, which would give data "captured" in BIM discipline models (which I wrote about in the introductory article "Advanced BIM Data Management" ) value through the exchange of data between BIM models of different disciplines.

Optimization of Generating BIM Discipline Model Geometry

Example 1: In projects, it is prevalent that you need to arrange certain BIM elements along a specific direction at equal distances. The elements could be columns, piles, lights, diffusers, etc., and practically all of the elements whose coordinates are defined with a particular point or vertical line.

The simplest scenario is when let’s say, we have a straight line of a certain length, along which it is necessary to arrange certain elements - we will use "Array" and, in a straightforward way, allocate certain BIM elements to the desired positions. However, if a line of a given length is crooked or changes direction several times, then we are talking about the arrangement of elements along the “spline”. Such a request can give us a lot of headaches and problems, take a lot of BIM modeling time, and it will always be questionable whether we have arranged the elements according to the given criterion with sufficient precision.

However, Dynamo script can help us with this. It will very quickly, efficiently, and, most importantly, in a perfectly precise manner, distribute a certain number of BIM elements along an irregular finite-length line. Please watch the video:


Example 2: In each project, there is a problem of coordinating openings between different BIM discipline models. It is typical for the BIM model of construction and MEP (mechanical, electrical, and plumbing) installations to follow the given openings that are generated in the BIM model of architecture. Take, for example, the need to coordinate door openings between the BIM architecture model and the BIM structure model. In this example, take the assumption that it is necessary to coordinate and model 168 door openings in the BIM construction model (a very realistic assumption for a 20-story building project), previously generated in the BIM model of architecture.
It would take in classic BIM workflows between half an hour and one hour to model openings in a BIM construction model. The issue of coordination between the BIM model of structure and the BIM model of architecture with the standard BIM workflow, i.e., classical modeling, would be highly questionable because of the possibility of human error in the process of BIM modeling.

A Dynamo script, which by clicking a button copies the type of opening selected by the BIM operator (doors, windows, generic openings) from the linked BIM architecture model to the BIM construction model, can also help us with this. Please watch the video:

Example 3: When designing buildings, most often, the architect first generates a BIM model. Except for the beams and foundations, the finished BIM architecture model contains almost all the essential elements needed by the structural engineer to begin modeling the BIM structural model. The process of modeling a "preliminary" BIM structural model usually consists of the fact that the BIM structural modeler models elements of identical physical characteristics and that the BIM structural elements are modeled at the same place as in the BIM architecture model. This scenario is very reminiscent of Example 2, where I showed that by clicking „Run“ in Dynamo scripts, it is possible to copy elements from a linked BIM architecture model to a BIM construction model. So why not do the same with columns, walls, and slabs and get a "preliminary" BIM construction model in a very fast and efficient way?

Assuming that you like the idea of copying columns, walls, and slabs from a BIM architecture model to a BIM construction model, the problem remains in "translating" BIM architectural elements into BIM structural elements. This can be helped, you can guess, by Dynamo, which translates the columns, walls, and slabs from the „Architectural“ category into the „Structural“ category. Of course, it is further possible to adapt the generated constituent elements in the BIM construction model to the families loaded into the BIM construction model template.

Only two Dynamo scripts are required for such a thing. Please watch the video:

If you want to optimize the design process further and get from the BIM structural model to the structural model to perform a preliminary static structural stability check, you need to model the foundations and beams, and your BIM structural model is ready for a preliminary static analysis.

Of course, the process itself from exporting the BIM construction model to generating the FEM model can be optimized, and Dynamo and Python can significantly assist you in this. It is also possible with Dynamo and Python to return data from an analytical model to a BIM structural model to visualize data obtained in a static analysis, to generate reinforcement for concrete construction projects, and much more.

Here I have to limit myself to the examples for BIM modeling automation since it is not my intention to present you a complete workflow related to optimization and automation of model generation of a particular discipline in a project, but to give you an idea what are the capabilities of Dynamo and Python, as the main tools in automating BIM modeling in the BIM workflow.

Effective data generation in the BIM discipline model

Example 4: Generation of surface and line loads from the drawings of loading diagrams - it is very debatable where exactly this example belongs. Namely, static loads in the construction model do not fall within geometry, and on the other hand, it is impossible to classify them as real data either. But as they are far closer to the data, here I am going to address the automation of load input in the BIM construction model.

If you want to input loads into the BIM construction model, which often requires a lot of manual work, and which can further result in a BIM model with input loads whose accuracy and precision are questionable, a possible solution may be to take load values from load diagrams in the BIM construction model and generate surface and line loads directly from load diagrams. Depending on the project complexity, only inputting the load into the BIM construction model can take up to several hours, while using the Dynamo script, after completing load diagrams and reading the load values from the diagrams with Dynamo, you can generate surface and line loads literally for a few seconds.

Please watch the video:

Example 5: In this example, I am going to try to show you how quickly you can generate information about the distance of two groups of BIM elements. You can understand this example as a functional check of the BIM model of architecture and other disciplines, in this particular case, a useful check between an architecture project and an electrical installation project.

In this example, the idea is to check if it is possible to plug a laptop into a socket from any chair in a particular room. Let's say that we have the classroom and that the project requirement is that every student, during class, can plug their laptop into a socket. The length of the cable that charges the laptop is three meters.

I have no idea how long it would take if the process were done manually. Depending on the size of the room, a functional check would probably take more than an hour. Again, the problem of data accuracy arises if a BIM modeler measures the distance of each chair to each socket. Fortunately, for such a thing, you can find help in applying a Dynamo script that will, instead of a modeler, measure the distance of each chair from each socket and paint all the chairs more than three meters away from all the sockets in red, which means that it is not possible to plug the laptop cable into no single socket. Please watch the video:

Example 6: Another excellent example of how we can fully automate data generation, but also processing them further through different calculations and visualization of the data obtained, I can give you an example of room occupant load calculations. Namely, using the Dynamo script, it is possible to collect data on the room's area and then calculate the room occupant load using the room occupant load factor. This avoids any manual work that was traditionally done in Excel since the value of the room occupant load is automatically changed every time the room area changes with the change in the room geometry in the BIM architecture model. Please watch the video:

Data exchange between BIM models of different disciplines

I want to start this part of the article with a brief introduction about the relationship between BIM generated data and their use by other disciplines, participants in a multidisciplinary project in the BIM environment.

I hope that every BIM architecture model you have encountered so far in the BIM project environment contains data for each room. In the architectural category "Room", the architect typically input data related to the purpose of the room, and then the BIM software automatically generates information about the area and volume of the room. Indeed, the purpose of the room also affects the expected load, which will be used by the structural engineer in his analysis.

I hope that you come to the idea that such data should be used and somehow downloaded into the BIM construction model, or BIM model of mechanical, electrical, or plumbing installations and speed up the process of data generation for these disciplines. Also, remember that importing data instead of manually entering data minimizes the possibility of human error.

I hope that by reading the introductory part of the data exchange between BIM models of different disciplines, you have come to realize that such an exchange is indeed possible by clicking on the “Run” button of a specific Dynamo script. So let's start with the examples.

Example 7: Take, for instance, the necessary exchange of data related to a room in the BIM architecture model - "Room" and a room in the BIM mechanical installations model - "Space". Using the Dynamo script, it is possible to transfer data from the Room to the Space in a straightforward way. Please watch the video:

Example 8: It is also possible to use data from the architectural category "Room" related to the room purpose and then generate surface loads using them. Please see an example:

With this example, I would finish the article on the BIM workflow automation and give some conclusions.

I hope that by reading the article "Small But Big Savings in The BIM Workflow" and looking at the examples, you have seen the potential of the BIM workflow automation tool, and how much time can be saved by automating BIM modeling, generating data for a BIM model of your own discipline, and what is the potential of automated and arranged data exchange between different disciplines in the BIM workflow. Always keep in mind that by using the BIM workflow automation tool, you minimize the potential for human error when generating or entering incorrect data. The purpose of automation by using its tools is to relieve the people from the tedious, manual tasks of the BIM workflow, and to enable spending the time spent in manual work on tasks that require creative, intelligent, human-only solutions that automation tools could not reach. If you look at the possibilities of BIM workflow automation and that once written script can be applied to an unlimited number of projects, it practically means that any script or other BIM workflow automation tool will pay you off through subsequent projects.

Always keep in mind that the limits of your imagination are the only limiting factor in the ideas of how to optimize and automate BIM modeling since, in the tools related to the automation and optimization of the BIM workflow, there are practically no limitations.

If you have any questions, comments, or want to know more about the topic I covered in the article "Small, But Big Savings in The BIM Workflow", please contact TeamCAD, who will be happy to provide you with additional information. Also, if you want to automate the BIM workflow on your projects and you are not sure which way to do it or what tools are best for something like that, TeamCAD will be happy to help you.

I thank you for reading "Small, But Big Savings in The BIM Workflow", and I am announcing my next article "What are Digital Twins".

Predrag Jovanović


Previous articles on the similar topic:

"BIM Workflow Automation"

"Advanced BIM data management" 


© 2022 TeamCAD d.o.o. All rights are reserved.

Welcome to! This website uses cookies. By continuing using this website, you agree to our use of cookies. More details