Engineers should stop saving designs as files to transfer them around. Streaming is now a much better alternative.

Why Files are bad

Think about some of the drawbacks that files have. As we all know, there’s a lot of change that happens to a design coming from the Architect, the Builder and the Engineers. A design that is saved as a file will require all these future changes to be manually updated to keep it up to date. This is compounded if you have several formats you need to work with (eg/ CAD, BIM and analysis files). As soon as you hit ‘Save As’, you effectively have an out-of-date version that was branched from the source material. That could be a lot of work.

Files also have technical drawbacks. Usually they are designed for a purpose specific to one particular software. Old CAD files were designed to hold points and lines, BIM files hold objects and structural files hold different information like loads and physical properties.

Each of these file types weren’t designed to be a swiss army knife. A CAD file is usually not good at storing loading information (if it can at all) while BIM files may not be concerned with parts being connected which is essential for a structural model file.

The closest ‘universal’ file type we have is IFC. However this also has drawbacks in practice. Consider Revit support as an example. You can view imported geometry as a ‘lump’, but the IFC elements themselves are not smart enough for Revit to determine their properties. In order for Revit to truly use the contents of IFC, each part must often be re-drawn by hand so that it can be used as intended.

Secondly, IFC can hold information in different ways and is interpreted uniquely by different programs. That’s why IFC sometimes drops parts or looks warped in different software. Remember, universal formats are always a secondary file type that programs offer support to. It’s therefore a also a second class citizen from a software authors perspective.

Missing information using IFC – A common problem

So if files are so bad, is there a better way?

Why streaming is the future

An old fashioned file isn’t the only way to transfer information anymore. It’s now possible for design data to be streamed directly between programs or to the internet.

This is possible these days because many programs now have an API available. The API allows software and scripts to write data directly into the program rather than a user clicking the mouse or typing on the keyboard.

For example, this technique allows software such as Rhino.Inside.Revit to directly control elements inside a host program (in this case Revit). Whenever an item is drawn in one program, it will appear directly in the other program.

The below example shows a design being streamed into three programs at once in real-time.

Real-time streaming

This enables several possibilities, and if taken all the way, could enable the following workflow:

  1. The architect streams a design directly to an engineers analysis program. No files used.
  2. The engineer makes changes and adds their input. Still no files.
  3. From there the new data is streamed directly back into the architectural model. Again, no files.

Here are some of the advantage and disadvantages of streaming we have been considering summarised below:

Advantages:

  • There is only one version of the design. Very little version management and no manual updating of several files in different formats required.
  • Input can be controlled from a single source. This means that the design can roll out to several programs or people all at once.
  • Your design creates ‘smart’ items that your program can use directly (unlike IFC).
  • Items will not be missed due to file export and importing errors or limitations.
  • Your design can be shared and viewed with others easily over the internet.

Disadvantages:

  • It isn’t compatible with all software at this time.
  • It can sometimes require more technical skills such as knowledge of parametric software.

How can it be done?

What many people do not realise is that streaming is available for quite a few CAD and engineering programs already. The most straightforward way is to use ordinary Rhino/Grasshopper. It actually works very well without support from any third party software. The advantage grasshopper has is that it is widely used within the industry and there are many software programs that already have support for it.

There are also third party options such as Speckle. Here, the data from one program is streamed to a database on the internet and then can be written to another program from that stream. For this to work, both programs require a plugin allowing the transfer.

Closing Thoughts

It might seem strange to stop relying on files as we do it as a matter of course in most day to day activities. However there are clearly disadvantages to saving various files as opposed to the many advantages of a streaming workflow.

It may be worth considering streaming for your own work for the future. Even today it can be surprisingly easy to achieve with existing technology.

More thoughts in the video below:

Published by structuredparametrics

Principal

Leave a comment