Learn to manage BIM workflows and create professional Archicad templates with the BIM Manager Program.

Archicad Python API
About automating tasks in Archicad using the Python API.
SOLVED!

Dynamic ID Coding of Building Elements

Patrick Sherwood
Participant

Hi,

 

Is there a way to define the ID of 3D elements (walls, slabs etc.) with some of its own properties .
eg. Wall = [Composite Name] + [Fire Rating] + [STC].

 

All of these have been defined, so would like a way to automate this rather than selecting all walls and changing manually.

 

Have tried the Element ID Manager but seems to only work to increment walls individually/or part of group and doesn't seem able to dynamically create IDs.

 

Thanks

1 ACCEPTED SOLUTION

Accepted Solutions
Solution
poco2013
Mentor

I make a short Demo video to show a Python script to accomplish this.

Convert Element ID to new title based on three properties of the element 

 

Attach is the script. Leave a comment if you have further questions.

 

Gerry

Windows 11 - Visual Studio 2022; ArchiCAD 27

View solution in original post

8 REPLIES 8
poco2013
Mentor

AFAIK - This is not possible with the "built in"tools in Archicad. You could create a new property using a expression which would create the new Id, but you could not overwrite the "element ID" property which I believe is your intent.

 

There are a few alternatives.

You could export a schedule to excel. Create a macro there to overwrite the Element ID field then re import into Archicad.

 

You could create a C++ AddOn to directly overwrite the "element ID"

 

Or the easiest, most straight forward way would be to create and use  a Python script. The script would involve only a few lines of code and would offer the most control over the logic, filtering and formatting.

Gerry

Windows 11 - Visual Studio 2022; ArchiCAD 27

I would like to know how this python script would be written.  I am also interested in writing specific information to the elementID field.

Kind Regards,



Sebastian Monroe

Director/Architect



T: +61 3 9017 6666

www.codearchitecture.com.au

NOM ARCH VIC ARB: 17939

Archicad v26, Mac Mini INTEL 64GB, AMD Radeon Pro

Does the element id manager not do what you are after?

Solution
poco2013
Mentor

I make a short Demo video to show a Python script to accomplish this.

Convert Element ID to new title based on three properties of the element 

 

Attach is the script. Leave a comment if you have further questions.

 

Gerry

Windows 11 - Visual Studio 2022; ArchiCAD 27
_c_
Enthusiast

Hello Gerry, many thanks for your very useful example.

Here I attach a variant avoiding the extra modules. Also there was a missing property (we are on the German AC) causing error.

 

This might be useful to others. 

 

_c_

The video is set to private, I'd love to see it.

Jared Banks, AIA
Shoegnome Architects

Archicad Blog: www.shoegnome.com
Archicad Template: www.shoegnome.com/template/
Archicad Work Environment: www.shoegnome.com/work-environment/
Archicad Tutorial Videos: www.youtube.com/shoegnome

Try it now?

Gerry

Windows 11 - Visual Studio 2022; ArchiCAD 27

Thanks. It works now.

Jared Banks, AIA
Shoegnome Architects

Archicad Blog: www.shoegnome.com
Archicad Template: www.shoegnome.com/template/
Archicad Work Environment: www.shoegnome.com/work-environment/
Archicad Tutorial Videos: www.youtube.com/shoegnome