Documentation
About Archicad's documenting tools, views, model filtering, layouts, publishing, etc.

Graphic Overrides Based on Relative Elevation

Jeff Galbraith
Advocate
Is it possible to create a graphic override rule that filters objects based on their elevational relationship to the cut plane of a view, or at least the home story of a view?

There are a handful of positional criteria that can be used when making rules but none appear to fit what I'm looking for. I've been able to create rules that filter based on an elements position relative to project 0 elevation, but then I have to create duplicate rules and graphic overrides for each floor in the project...a total waste of time. Below is the list of positional criteria I see available:

Absolute Top Story
Elevation to Project 0
Elevation to Reference 1
Elevation to Reference 2
Elevation to Sea Level
Home Story
Relative Top Link Story

Every single one of these requires selection of a specific story, or are relative to a fixed point unrelated to the story of a view (floor plan)

Thanks!

Jeff
Jeff G

Archicad 27 USA (full), Macbook Pro (16-inch 2023, M3 MAX, 128 GB RAM)
6 REPLIES 6
felcunha
Expert
You can find what you want by restraining your criteria to "3D types" and then you could find "Home Offset" as criterium under Positioning...
Felipe Ribeiro Cunha

AC 26, macOS Monterey
Jeff Galbraith
Advocate
That only gets me part of the way there. But in a case where I want to control the appearance of a slab located on the level above or below it falls short, because it evaluates the elevation of those elements with relation to their home story, NOT the story of the view.

Jeff
Jeff G

Archicad 27 USA (full), Macbook Pro (16-inch 2023, M3 MAX, 128 GB RAM)
Laszlo Nagy
Community Admin
Community Admin
You should create an expression-based Property. It would be a Length type Property and it would return the "Elevation to Home Story" value. There are a lot more types of Elevation values available in Property Expressions.
The Property should be made available for Object type of elements.
Then you should create a Graphic Override Rule based on the value of this Property.
Loving Archicad since 1995 - Find Archicad Tips at x.com/laszlonagy
AMD Ryzen9 5900X CPU, 64 GB RAM 3600 MHz, Nvidia GTX 1060 6GB, 500 GB NVMe SSD
2x28" (2560x1440), Windows 10 PRO ENG, Ac20-Ac28
Jeff Galbraith
Advocate
Hi Laszio,
Sounds promising. I haven't tried anything like that yet and am not familiar with expressions in Archicad. Creating a new property was easy, but I can't seem to find any parameters or properties that seem to fit my objective. ie: In order for the expression to be relative to the view, I need a parameter that is specific to the view in order to establish the base point of the equation. ie: the equation needs to look something like this:

if [Element Vertical Position) is higher / greater than the [View Cut-Plane Vertical Position] = Above
if [Element Vertical Position) is lower / lesser than the [View Cut-Plane Vertical Position] = Below

Alternatively I could work with something like this instead:

if [Element Home Story) is higher / greater than the [View Home Story] = Above
if [Element Home Story) is equal to or lower / lesser than the [View Story] = Below

Then, in either case I would need a graphic override with ta rule that would filter elements based on the returned value of 'Above' or 'Below'.

It looks like the list of parameters is entirely related to elements. I see properties in the list that relate to the 'Element Home Story', and the 'Element Vertical Position' variables listed in my expressions above, but I don't see a single parameter that appears to be targeted at the properties of the view. Can you help me with that?
Jeff G

Archicad 27 USA (full), Macbook Pro (16-inch 2023, M3 MAX, 128 GB RAM)
Laszlo Nagy
Community Admin
Community Admin
Unfortunately, I do not see any such data among the available Parameters and Properties.
These would be View-related data, or data about the ARCHICAD environment. However, only element-related data are available when creating Expression-defined Properties.

When you compare it to the Floor Plan Cut Plan, I can imagine achieving that only by comparing the Elevation to a Constant Value, which would be stored in another Property, for example a Length-type Property with the value of 1100, which is the default Floor Plan Cut Plane Height. Of course you would have to make sure that this Constant is set to the value you need, so it would not/could not derive its value automatically from the Floor Plan Cut Plane Height value of the currently active View. I do not see any way to automate that using Expression-defined Properties.
Loving Archicad since 1995 - Find Archicad Tips at x.com/laszlonagy
AMD Ryzen9 5900X CPU, 64 GB RAM 3600 MHz, Nvidia GTX 1060 6GB, 500 GB NVMe SSD
2x28" (2560x1440), Windows 10 PRO ENG, Ac20-Ac28

Hi Jeff,  

 

Did you ever figure out a way to determine if a visible object had a home story different to the story of the view / or elevation relative to current cut plane?

 

Cheers,

Ben