Extract material quantities for doors and windows

Hi everyone,
I am trying to extract the area of the window elements per material. When I use the Element.Materials node the total area extracted is way bigger than the one calculated when I directly extract the area using the node Element.GetParameterValueByName. This problem occurs with doors and windows. Do you have any idea why I get so different values?
In the Edit Family --> Family types there is no volume or area defined parameter for windows. I tried to create the parameter per element but it gets very complicated and it didn’t work. (windows have window handles,ventilation panel e.t.c). If there is no parameter area, which is the value that Dynamo extracts as area?
I am very confused and I hope that with your help I could figure out how to get the accurate values. I have attached a screenshot to show exactly the case. Thank you


Hi @Christina

Could you show preview for all the nodes?

Hi @Kulkul,
Hope this helps a bit. Let me know if you need more information.

Hi Christina,

I guess the problem with the Dynamo solution is exactly what you have identified… you will struggle to see exactly what you are measuring.

If someone has only modelled a single solid for triple layered glass presumably you’ll get all 6 sides added as the area… but maybe you only want 1 side of 3 layers? The outputs might be very misleading and hard to check…

I would try and do the maths inside the family, even if it’s complex, you’ll have confidence in your numbers… or have a very big caveat!

That said I’m intrigued to see the Dynamo solutions :slight_smile:

Hope that’s of interest,



Thank you @Mark.Ackerley,

After doing quite some research I found out that Revit calculates the Area using the method HOST_AREA_COMPUTED. This number in my project is 8,07m2. I am attaching a screenshot for your information.

When I create the material take off then the area per material (Material: Area) is quite different and much bigger (see attached pic). I understand that it is complicated but at least I would like to know where does this “Material:Area” value comes from. Any ideas?

Also is there an easier way to calculate the face-area (only one side) per material?


1 Like

The overal window dimensions in my project are 2,95*1,85

As @Mark.Ackerley pointed out - you are likely getting the surface area of all associated faces.

To test, start a new project and place a family containing a 1x1x1 cube and see what value you get.

1 Like

Jacob is right… And the suggestion to setup a very simple test file will pay you back very quickly.

But my point is that if someone has applied toughened glass to the window and the window glass to the lower pane, how do you know?

The idea that the numbers are right just because they came from the BIM is a huge problem.

I always want sets of drawings that graphically display the data, for me that’s the big win of BIM over CAD & Excel…

Perhaps if you setup a dimensioned view which colour codes materials with filters you’ll be able to see where the discrepancies in the numbers are?

Hope that helps,


1 Like

Hum well, we can get a geometric form with a particular material (I think we need to get that from a family environment) … But after that I think we start assuming…

For example, this gives the area of the largest face of the extrusion used to represent a double glazed unit… So if you doubled it, you would get the area of glass required in that double glazed unit… You could also do the same with the frames I guess.

It’s pretty rough and ready…

And as stated above, I wouldn’t trust it in any way :smiley:

Hope that’s of interest…


Edit: If you want to do it from the project environment, you can obviously take a similar leap into assuming that the sweep is the frame and the extrusions are panes…


Thank you @JacobSmall and @Mark.Ackerley!:grinning:
I will probably create the parameters in Revit and then extract them in Dynamo, because I want to be as accurate as possible.
@Mark.Ackerley How can I set up a dimensioned view that colour codes materials with filters? Is there any example that I can refer to?

Thank you

Hmm… Ok… Trying it in practice is always a bit different…

How about you duplicate your window component Legend? Chuck it to Realistic to get colour and textures… Then you can Tag your Materials and Dim them…

If you review that drawing against your schedule, you’ll be able to Sense-Check the numbers you’re getting out?

Hope that helps,


@Christina i’m facing the same problem. i would like to know which pakage you used for element.material (Custom node). Also, the value provided by this node is same as in schedule develop in revit? please reply

This may help: Get all the Materials of a Family in Dynamo.

Try Clockwork.