BIM Coordinator Program (INT) April 22, 2024

Find the next step in your career as a Graphisoft Certified BIM Coordinator!

Project data & BIM
About BIM-based management of attributes, schedules, templates, favorites, hotlinks, projects in general, quality assurance, etc.

Import IFC Hotlink as a single non editable object?




Is it possible to hotlink an ifc file as a non editable "object" with all the parts "merged" into one? I am sorry for not knowing the correct terms.


I work on a project where different parts (HVAC, piping, ducts, cable trays, architecture, structure and so on) are developed by different contractors. Once they finish the changes, they upload the ifc file for their part. For my task I must have all the parts in the project so that I can see where to route the cable trays and so I hotlink all the ifc files into one pln file, which is my working project.


The problem is that I do not need to have all the single screws, plates, pipe fittings and so on as individual items - in the embedded library the Hotlinks folder has 49000 placed objects and 128000 placed instances! And it hurts the performance too - I have I9-12900, 64 GB RAM and an RTX3070 and with everything hotlinked and all layers visible it becomes pretty much impossible to work.


I hope that there is a possibility to import (or hotlink, or merge) ifc files as a single object. Because all I really need is the visual representation of other parts of the project.


I am eagerly looking forward to any advice from more experienced users.


Best wishes,


i9-12900 | 64GB RAM | 1TB NVME | RTX 3070 | WIN 11
Marc H

One method I have might be a bit off-the-wall, but may work for you in some form. It is to convert all (or portions of) the IFC content you want to reference into a single AC object; then place that object into your working model.


This can be done by importing the IFC content into an empty PLN, setting all layer and view settings, then selecting all the elements you want to use as reference.  Next, pick File > Libraries and Objects > Save Selection As Object.  Name the object and direct it into an external library folder where it can be found by your primary PLN.  Finalize the BMat assignments it picks for object creation to help further visualization if desired.

In your primary project PLN, add an instance of the object (external folder must be loaded in your libraries), and place it to the proper origin.  From here you can add your routing, using GORs as needed to assist in modeling.


Some Pros:  

  • The resulting object reduces the thousands of individual objects into one, and consolidates attributes accordingly.
  • You can include AC content with the imported IFC content when selecting for object creation.
  • You can set content visibility (e.g., wireframe, solid, etc.) before object creation which will be carried into the object.
  • You can apply GORs while modeling.
  • You can use the object creation PLN repeatedly as you receive updated files.


  • The resulting object may be large and cumbersome to fly in and around in 3D and may appear oddly in 2D views.  
  • The resulting object will be 'dumb' in that you are not able to snap points as you might for some routing.


  • You could mitigate some of the downsides by creating objects of elements on a story by story basis or some other criteria that works for your purpose.

Sample of IFC and AC content converted to object with native imported attributes.pngSample of IFC and AC content converted to object with 'glass' GOR applied.png
“The best thing about the future is that it comes one day at a time.” - Abraham Lincoln

AC27 USA on 16” 2019 MBP (2.4GHz i9 8-Core, 32GB DDR4, AMD Radeon Pro 5500M 8G GDDR5, 500GB SSD, T3s, Trackpad use) running Sonoma OS + extended w/ (2) 32" ASUS ProArt PAU32C (4K) Monitors

Thank you very much for such an extensive answer! I really appreciate your time! And I will try your suggestions and will report back.


Have a good day!

i9-12900 | 64GB RAM | 1TB NVME | RTX 3070 | WIN 11

I am sorry it took me so long to reply.


I have tried your suggestion, here are steps I took:

- open ifc file directly in Archicad (not as hotlink)

- go to 3D view, click control+A

- go to File -> Libraries and objects -> Save selection as -> Object

- choose Browse under Save Library Part to and save it under the name New Object 1.gsm


Now I would open a new instance of Archicad and do this:

- go to File -> Libraries and objects -> Library Manager and click on the Embedded Library tab

- click on the Add new file(s) to the selected folder and choose New Object 1.gsm that was created earlier

- click Reload & Apply and OK


Then I would go to Design -> Architectural Tools -> Object and choose New Object 1.gsm from the Embedded Library. If I would click on the 3D preview button, I would see the attached image Object without hotlink.png. If I would continue then I would have an object in 2D, but nothing in 3D.


But if I would say cancel instead and hotlink the ifc file that was used to create an object and then add the same New Object 1.gsm, then I would see its 3D preview (see Object with hotlink.png) and once inserted into the project I would see it both in 2D and 3D views - yay! Or is it nay?


Because if I would go to the Hotlink Manager and delete that ifc hotlink, then my 3D view disappears too... :shocked


And last but not least, if I open a new instance of Archicad and just doodle some cabling trays and then go to 3D view, select all, save it as an object and insert it as an object in another project, the it all works well without hotlinking. But if I first save the trays as an ifc file and then create an object from that ifc file - then it's all the same just like before.


It seems that something goes wrong when the project isa saved as an ifc file, but I lack any experience to further investigation.


If someone could give me a pointer or tip, I would be very grateful!


Best wishes,


Object with hotlink 3D.pngObject with hotlink.pngObject without hotlink.png

i9-12900 | 64GB RAM | 1TB NVME | RTX 3070 | WIN 11

Hi Jakob,

I’m not sure if I am following completely (e.g., your need for hotlinking), but I would not worry about the preview window. Did you save the new object outside of the PLN (to a loaded external folder, not the internal Embedded Library)?  If external, it will be available to your cabling PLN, provided you load that external folder to it in the Library Manager. The object will be a .gsm filename (e.g., BldgRef_1.gsm).

After you place an instance of the object in your cabling PLN (via Object tool), it will behave as any other object. For example, if your object goes into multiple stories, you will need to turn on Show on Stories - All Stories, because it only knows its home story, like any other object. Similarly, it will only reside on one layer, so your LCs and GORs, etc. will need to be checked if visibility is an issue.

I ran another IFC import test (with a silly building section I sometimes use to test things).  Once the IFC building components were in a PLN, I created an object of the building section (saved to my external library folder) and then opened my 'cabling PLN' and inserted two instances of the building object.  [Note: I noticed the building object I created used the bottom most story elements as a home story (in this test my foundations on the Foundation story).]  With the 'building' in place,  I was able to run some cabling tray through it.  I also could wireframe the building objects' (via layer toggle), which can come in handy. 


I expect you could delete the building object/s after you place all your cables, leaving a nice clean cabling-only model for exchange back to your team.  If so, you would need to keep some sort of building registration coordinate (or place a small monument) for them to bring your elements into their building model.

'Building' objects placed and Cabling routed.png'Building' objects in wireframe and routed cable tray.png
“The best thing about the future is that it comes one day at a time.” - Abraham Lincoln

AC27 USA on 16” 2019 MBP (2.4GHz i9 8-Core, 32GB DDR4, AMD Radeon Pro 5500M 8G GDDR5, 500GB SSD, T3s, Trackpad use) running Sonoma OS + extended w/ (2) 32" ASUS ProArt PAU32C (4K) Monitors

Hi Jakob,

I ran a third test using one floor of a recent building project which included some variously sourced objects to simulate the complex files you receive from your contractors.  While I was able to create the .gsm with a fairly small file size, it failed to show in 3D in my attempts to place an instance in my 'cabling PLN', consistent with your experiences.  (Doing a 3D script check after opening the object revealed several element errors within a 15KSF floor plan with only structure, walls, and ceilings.) Not surprisingly, it seems the success of the method depends on the quality of the source model elements you are receiving from your team. 

You may want to explore a team session to set a lower level of detail (LOD) as a standard and/or which key elements to include in model exchanges to make the coordination easier. Another option might be a BIM workshop where everyone brings their models together in a live session.  I'm not sure how that works for Archicad and the trade models you are working with.  (My experience with these types of sessions involves various trade models built around a Revit architectural model and are then brought together in Navisworks for clash detection and modification.)

“The best thing about the future is that it comes one day at a time.” - Abraham Lincoln

AC27 USA on 16” 2019 MBP (2.4GHz i9 8-Core, 32GB DDR4, AMD Radeon Pro 5500M 8G GDDR5, 500GB SSD, T3s, Trackpad use) running Sonoma OS + extended w/ (2) 32" ASUS ProArt PAU32C (4K) Monitors
Learn and get certified!