Libraries & objects
About Archicad and BIMcloud libraries, their management and migration, objects and other library parts, etc.
SOLVED!

Creating 2D-only Objects that can be updated at scale and in-place?

Brandon-W_DWa
Enthusiast

I am trying to determine the best workflow (which we define as the least time-consuming, least error-prone, and least workaround-ish) for the following scenario:

  • We have a very large industrial project with dozens, if not a hundred plan and section details.
  • In a lot of these details, there is a common assembly/condition in which modeled content is not appropriate, therefore we detail with lines, fills, etc.
  • Rather than draw and then copy/paste the same 2D elements over and over, we select the 2D elements, and perform the command "File > Libraries and Objects > Save Selection As... > Object". We do this with the thought of being able to update all instances of this placed object in the future.
  • This works great, until the team needs to make even a small revision to this saved object (with essentially a save-as and overwrite of the object). Although the content itself changes, the proportions (bounding box) of the object stays as it was prior to updating the object, rendering it useless. See the older post below from another user for the same problem:
    Editing 2D objects changes their proportion 

 

I'm wondering what I need to do differently in order to make this work as we want? Essentially, if I have 50 2D objects placed in our documentation, I want to be able to update the object, and all 50 instances update as well, without getting distorted. Thanks!

 

Operating system used: Mac Apple Silicon 14.7.5 Sonoma

Versions 27 or 28
2021 MacBook Pro 16", M1 Max Chip, 64gb DDR5
Browser: Google Chrome
2 ACCEPTED SOLUTIONS

Accepted Solutions
Solution
runxel
Hero

With this type of application never do a "save as" through the menu.

Teach your colleagues to use the "2D-Symbol" part of an object. So: Create a new empty object and then paste everything from the floor plan in there.

Cool thing: You have 16 layers where you can store different stuff.

Either then use "fragment2 all, 0" in the 2D script or substitute "all" with a layer number between 1 and 16 – or: even make it into a parameter. Gives you plenty of options! 😎

Also much easier to amend/edit and it will not eff up everything after resaving.

Lucas Becker | AC 27 on Mac | Graphisoft Insider Panelist | Author of Runxel's Archicad Wiki | Editor at SelfGDL | Developer of the GDL plugin for Sublime Text | My List of AC shortcomings & bugs | I Will Piledrive You If You Mention AI Again |

POSIWID – The Purpose Of a System Is What It Does /// «Furthermore, I consider that Carth... yearly releases must be destroyed»

View solution in original post

Solution
Jaime-airc_digital
Enthusiast

I think the patch objects are exactly what you are looking for:

https://help.graphisoft.com/AC/28/INT/_AC28_Help/040_ElementsVB/040_ElementsVB-288.htm

Archicad 28 ARM, MacBook Pro M3 Max 128Gb, macOS Sonoma.
/Operations Director /BIM Lead /Architect @ www.airc.digital ltd ™
M Architecture & Urbanism ARB

View solution in original post

9 REPLIES 9
Kristian Goodsell
Contributor

Brandon

If you trust the team to do a small amount of GDL it's fairly simple.

 

Once the object is saved, you'll have to open the object

File > Libraries and Objects > Open Object and add a couple lines to the master script

values 'A' ?.??
values 'B' ?.??
(the ?.?? represents the values that need to be updated.)
 
Hope that helps mate
Version 6 - 27
Solution
runxel
Hero

With this type of application never do a "save as" through the menu.

Teach your colleagues to use the "2D-Symbol" part of an object. So: Create a new empty object and then paste everything from the floor plan in there.

Cool thing: You have 16 layers where you can store different stuff.

Either then use "fragment2 all, 0" in the 2D script or substitute "all" with a layer number between 1 and 16 – or: even make it into a parameter. Gives you plenty of options! 😎

Also much easier to amend/edit and it will not eff up everything after resaving.

Lucas Becker | AC 27 on Mac | Graphisoft Insider Panelist | Author of Runxel's Archicad Wiki | Editor at SelfGDL | Developer of the GDL plugin for Sublime Text | My List of AC shortcomings & bugs | I Will Piledrive You If You Mention AI Again |

POSIWID – The Purpose Of a System Is What It Does /// «Furthermore, I consider that Carth... yearly releases must be destroyed»
Davor P
Booster

Pmks or hotlinked modules sound more appropriate for what you're describing.

BIM4BIM - by BIM managers for BIM managers
www.bim4bim.com | audit.bim4bim.com

An option to consider: using complex profile and column or @runxel "2D complex profile" object https://runxel.xyz/archicad-objects/

Archicad 27 - GDL - PYTHON
Brandon-W_DWa
Enthusiast

These all seem like good workflows to test out; thanks all!

Versions 27 or 28
2021 MacBook Pro 16", M1 Max Chip, 64gb DDR5
Browser: Google Chrome
Solution
Jaime-airc_digital
Enthusiast

I think the patch objects are exactly what you are looking for:

https://help.graphisoft.com/AC/28/INT/_AC28_Help/040_ElementsVB/040_ElementsVB-288.htm

Archicad 28 ARM, MacBook Pro M3 Max 128Gb, macOS Sonoma.
/Operations Director /BIM Lead /Architect @ www.airc.digital ltd ™
M Architecture & Urbanism ARB
Jaime-airc_digital
Enthusiast

Here is a video from @Luca Manelli explaining the use:

Archicad 28 ARM, MacBook Pro M3 Max 128Gb, macOS Sonoma.
/Operations Director /BIM Lead /Architect @ www.airc.digital ltd ™
M Architecture & Urbanism ARB

@runxel,

I ended up going this route, and I wish we would have utilized this system a long time ago! So thank you again for your response.

 

In my 2D-only object, I've utilized almost all 16 layers, in an effort to make the object as versatile as possible. And with your suggestion, I made them toggle-able with parameters. Now, I'm wondering if I could introduce some very basic parametric elements, beyond just "on/off" for the FRAGMENTS. My current object is all 2D elements to represent a millwork section, and I'd like to make the countertop depth parametric, as one example. However, I found this snippet in the GDL center; is this accurate?

 

Screenshot 2025-06-11 at 5.16.06 PM.png

 

 

 

 

 

 

 

I also attached my current object, if anyone wants to take a closer look.

Thanks all!

Versions 27 or 28
2021 MacBook Pro 16", M1 Max Chip, 64gb DDR5
Browser: Google Chrome

The fragments are not parametric, just static images.

So they are good if you just want option A or B or C.

 

To have a truly parametric symbol, you will need to actually script the detail with GDL commands (lines, rectangles, polygons) using parameters to control the sizes.

 

Barry.

One of the forum moderators.
Versions 6.5 to 27
i7-10700 @ 2.9Ghz, 32GB ram, GeForce RTX 2060 (6GB), Windows 10
Lenovo Thinkpad - i7-1270P 2.20 GHz, 32GB RAM, Nvidia T550, Windows 11

Setup info provided by author