We value your input!
Please participate in Archicad 28 Home Screen and Tooltips/Quick Tutorials survey

Parametric design
About Rhino & Grasshopper and PARAM-O.

Select individual surfaces of walls by material in Grasshopper

FHA
Participant

Hello everybody,

 

Here is what I am trying to achieve: My input is a wall element in ArchiCAD that I have created manually. My goal output is a set of BReps of individual faces/surfaces/skins of that wall in Grasshopper, only those to which I have assigned a certain surface material through "override surface" in the wall or window settings. 

 

Ideally there would be a solution that works for any kind of element (walls, slabs, windows, doors and so on). Basically any surface of that certain material.

 

I had three approaches out of which I think the first two wont be able to work.

 

1. ArchiCAD Live Connection - Wall Surface Type

  • link AC wall to wall component in GH
  • deconstruct wall
  • right-click component
  • select wall surface type

This way I can differentiate between inside, outside surfaces etc. but wont be able to select them by material.

 

2. ArchiCAD Live Connection - Extract Property Settings

  • link AC wall to wall component in GH
  • get property settings
  • extract property settings

This way I can extract any of the wall properties. Afaik none of those give me information about the individual surfaces but only look at the wall as a whole. 

 

3. Grasshopper Python ArchiCAD API request

  • create a python component
  • apply lecetas method: Re: Grasshopper + Python json Addon
  • from there somehow extract the IDs of individual surfaces of the wall and filter them by material

My coding skills are limited and even more so is my knowledge about API requests. But I see this as the most promising way and would be happy to delve into the topic further. From my understanding the tAPIr set for Grasshopper makes this method more accessible for non-coders but I would prefer to do it with an own script.

 

Any ideas on how to solve this?

 

Thanks in advance!

 

Operating system used: Windows 11


1_WallSurfaceType.png2_ExtractPropertySettings.png3_PythonApiRequest.png
1 REPLY 1
Nurbs
Advocate

Hi FAH,

I'm not as deep into python. Therefore I would try the following: Take your solution 1 . This will deliver the Breps and also the wall ID and the surface aera (deconstruct Brep as well).

In a second step I would export a wall schedule containing the wall ID, surface material, surface area etc. to an excel sheet. This I can import to GH with an excel reader node (Lunchbox has one).

The rest of the work is to sort and compare the lists with expressions or other nodes to achieve your desired result.

For a better identification of your walls you can also bring some properties into play . They can also come with the schedule.

AC16 - AC aktuelll , WIN 10

Setup info provided by author