One of the biggest changes in ArchiCAD 17 is the introduction of a new Attribute: Building Materials. To understand why Building Materials are arguably the most important change to happen to ArchiCAD in recent memory (yes more important than Morphs, Shells, Renovation Filters, Integrated Energy Analysis, or even Teamwork 2), we need to discuss Attributes and Parameters. Investigating these two concepts will reveal some of the underlying complexity and order inherent in ArchiCAD, and allow us to better understand the power of our preferred tool. Oh and set up a future post where I actually talk about Building Materials.


Parameters VS Attributes, explanation 1

FlatCAD programs were all about parameters, which are specific things you can change to an element (such as the width of a polyline in AutoCAD). BIM programs have a heavier focus on Attributes. In ArchiCAD we don’t have a width parameter for polylines, we have an Attribute for pen number which can be assigned to a polyline. And that pen number controls not just width, but also color. And both that color and width can be subsequently changed based on pen set, which is controlled by the view settings…all these layers and filters. We’re not even talking about the benefits of BIM during construction or facilities management and we’re already seeing a fundamental difference between the workflows and benefits of BIM vs. CAD.

The example of polyline widths in AutoCAD vs ArchiCAD is a great example of the difference between parameter based elements and Attribute enabled elements, so I’m going to digress for a moment. I once had a user complain about ArchiCAD not being able to give polylines a thickness like can be done in AutoCAD. Here’s my response:

In ArchiCAD instead of thinking “I want this polyline to be 100 pts wide”, you need to think “I want all polylines with pen number 1 to have a width of 100 pts.”

There’s a difference between a program not working in the manner you want it to (ie mimicking another program) and a program lacking a function. The manner that ArchiCAD assigns thicknesses to polylines or anything else is controlled in an intelligent (BIM) way by universal project specific Attributes. Following ArchiCAD’s logic you can designate a series of pens to give you the range of thicknesses you need to assign. In other words ArchiCAD can assign thicknesses to polylines via pen numbers.

This is one of those major differences between CAD and BIM, the ability to specify at a local or global level. In CAD one looks for a width parameter; in ArchiCAD one assigns an Attribute that contains width/thickness.

Attribute to Parameter

Parameters VS Attributes, explanation 2

ArchiCAD parameters are individual settings available to individual elements. ArchiCAD Attributes are groups of defined settings available to your project. Parameters affect individual elements while Attributes affect every element containing that specific Attribute.

Attributes themselves have parameters that describe them. For instance Surfaces have settings for Exposure to Light based on various numerical inputs. Additionally Attributes can also contain sub-Attributes. Continuing with the Surfaces example, Surfaces contain a Vectorial Hatching parameter that links to the Fill Attribute.

Attribute to Attribute to Parameter

Parameters VS Attributes, explanation 3

Micro Solution – Parameter

Parameters are micro-solutions. They affect only the element(s) you are working on. A parameter may be defined as a string of text, a numerical input, or a drop down menu of defined choices, such as a list of Attributes (Surface, Fill, pen number, etc). EXAMPLE: A wall has a parameter for Reference Line offset. If you change this number (from 0″ to 3″), it affects only the selected wall(s). Likewise, if you change the parameter for the Composite of the wall from Wall 2×6 – EXTERIOR to Wall 2×4 – EXTERIOR, you are only affecting the selected wall(s).

Macro Solution – Attribute

Attributes are macro-solutions. Altering the definition of an Attribute redefines that attribute everywhere in the project. So if instead of changing one particular wall’s Composite structure from Wall 2×6 – EXTERIOR to Wall 2×4 – EXTERIOR, you redefine the Wall 2×6 – EXTERIOR Composite Structure Attribute, then all walls with the Wall 2×6 – EXTERIOR Attribute will be affected.

Attribute to Parameter Example

Parameters VS Attributes, explanation 4

Certain pieces of data in ArchiCAD aren’t involved in the Parameter/Attribute split. These are typically geometric properties of particular elements. For instance the length of a wall, the shape of a slab, or the various faces of a Mesh or Morph. These are editable graphically and can be changed numerically via the Tracker or Coordinates Palette, but they can not be changed via the Info Box, Selection Settings, or in a Schedule (though some of these non-parameters can be listed in a schedule, like Wall Length). These pieces of data are typically unique to a specific element. Most walls on a given floor have a unique length, but an identical height (which is why height is a parameter that can now be linked to story height). Here’s an example of why this matters:

One-Building-Material-Many-ElementsI typically use Columns for vertical trim and Beams for horizontal trim—whether it’s window/door trim, exterior trim, etc. Why? One of the primary reasons is that I can control more of their dimensions via Attributes (Complex Profile Columns for vertical trim are amazingly versatile) and Parameters than walls. This gets a little confusing, but all three of a columns dimensions (width, height, length) can be controlled by parameters or a combination of parameters (height) and Attributes (width and length via an assigned Complex Profile). This means I can control the shape of trim on a project globally by altering the Complex Profile. And I can change trim height by selecting all the elements and changing a parameter in the Info Box or Selection Settings. Likewise I use beams for trim because they have additional parameters than walls: specifically Beam Slant Angle and Beam Profile Rotation. Neither Beam length or Wall length is connected to a Parameter or Attribute.

Imagine a Land of No Attributes or Parameters

Why so many versions of the explanation?

I want you to understand the difference between local and global data. I want you to see how there is value to both. A BIM application based on all local or all global data would be just as cumbersome as one based on only non-parameter data. Imagine if every wall’s length had to be linked to an Attribute. Or if every Composite Structure had to be constructed for each wall. Or if every wall had to be drawn line by line… We need to understand the value of each type—Attribute, parameter, and non-parameter—and use it where it suits our needs best.

I want you to understand that things like Story Height or Auto Text, while not listed as formal ArchiCAD Attributes, function the same way when parameters can be linked to them. I want you to be able to explain the difference between Attribute, parameter, and non-parameter based data to everyone you work with. I want you to be able to explain this to every new employee, every boss, every client you’re telling about the benefits of BIM. I want you to be able to ask your BIM Manager tough questions about how your template and company standards should be organized.

Understanding where the data belongs and how it connects to elements is important. Is the data specific to a particular element? Is the data similar across many similar elements? Should it be linked to every similar element? Once you can answer these questions you can start choosing the right tool to use.

And perhaps finally: discussing the value and differences between Attribute, parameter, and non-parameter based data helps us shift the conversation about using ArchiCAD from drawings and models to data and information. Once we start viewing our work in those terms, then we can start doing some amazing stuff.

Your Turn

If you could have a say in the creation of a future Attribute or some non-parameter that should be a parameter, what would it be? What’s the next piece of intelligence you’d like to see incorporated into ArchiCAD? And don’t say Stair Tool. That’s not what we are talking about here. What would give you more control? What would help you leverage your BIM better? What would better help you turn your Building Information Model into a Building Intelligence Model?


Helpful Links and Additional Reading:

Fixing Error Messages and Ugliness with the Attribute Manager

Graphisoft Help Center: Attributes

Parameter Transfer Between Objects Video

Fun Fact:

The max width assignable to a pen number in ArchiCAD is 100 pts OR 100 mm. And in case you were wondering, 100 pts = 35.28 mm. So yeah, think about that for a moment (if your brain hasn’t already shut down from reading this post).


  1. Stefan Boeykens

    A combination of the Renovation Tool on steroids combined with the Find & Select tool to make “smart views” as queries into the ArchiCAD database.

    (That is the catchphrase… The rest might not fit into a comment)

    1 – Similiar as the Find & Select, you make custom selections and store them under a name. (This is already inside ArchiCAD). Call it “smart filters”.

    2 – Then you can use an extended version of the Renovation Tool, where you can create custom “tags” as attributes for “any” element. Similar as the Taxonomy inside Drupal: different categories of related terms (just as new/existing/demolish are the terms for the Renovation Category). I’m imagining “phasing”, “fire safety”, “maintenance”, “Facility manager reporting/comments” etc… Make it open and user-definable.
    And included them with IFC exports.

    And allow custom highlighting > color, linetype and fill overrides, just like the Renovation tool. Create multiple highlighting styles and let the user relate the highlighting style to the Categories.

    The functionality is already there, in the Renovation Tool.

    Call it “smart highlighting”.

    3 – Allow the creation of a Smart view, based on the “smart filters” and the “smart highlighting”. Now you can place the view on a layout or export it from the Publisher.

    I assume that 90% of the functionality to do this is already inside ArchiCAD.

  2. Brian Lighthart

    I too saw great potential to handle phasing in the Renovation filters when they first appeared. I was sorry to see only three options for renovation status, and no way to extend the range. Even to use the renovation filters as intended I need not just Existing, Demo and New. I need Relocated, Salvage to owner, and Furnished by Owner, at least. It doesn’t take long to see that “By Owner” and “Furnished by Owner” would be useful not only in renovation projects, but in new construction as well.

    The next step my mind took was to phasing – in which phase 2 elements have a “Future” status in phase 1, and phase 1 elements have an “Existing” status in Phase 2. Which brought me right to wanting these so-called renovation filters to not be specialized to renovation projects, but instead to provide a way of tying a model object to user-created phases of work, sources, and destinations. Existing to remain, existing to be demolished, existing to be removed, existing to be refurbished and re-installed, existing to be relocated on this site, existing to be relocated to another site, relocated from a location on this site, relocated from another site, Future, Future by Owner, Part of the current proposed work or ongoing work, Part of the current proposed work, but furnished by the owner.
    It’s not hard to see why I feel hamstrung by only three categories. It is a really good idea to have the kinds of classifications that the renovation filters provide, but it’s underdeveloped, in my opinion. As a result, I probably won’t use renovation filters much. But I would if I could create status categories (eg: project stages, contract scopes, and status), and relate model elements to each of them. Instead, I have lots and lots of layers in renovation project models. I will have fewer layers using the three renovation categories, but I will still need to augment them with layers or learn how to use AC Database Descriptors and/or Property objects. If the AC database tools can do that I am all ears.

  3. Jared Banks

    Brian, couldn’t agree more! It would be so nice if Renovation Filters were just like layer combinations and we got to define them as we see fit. If ArchiCAD can handle 3, why not 30?

    I hope this is further developed and soon.

  4. Martin Pasman

    Maybe a very small part in archicad, but i would like to be able to choose profiles within the standard window-objects.

  5. Jared Banks

    Martin, I agree that would be nice. It would be a big step in making our details fully from the model.


Submit a Comment

Your email address will not be published. Required fields are marked *