Level Name problem

I am trying to capture Level Names from rooms. When I use the Element.GetParameterValueByName node, I get an inconsistent list with some values as strings and others the full parameter containing Level, Elevation (see image 1).

Can someone explain why this is happening? Does this have something to do with potential overwritten parameters in the Revit model? Looking at the list of associated rooms, it is completely random which ones show up as string vs. full parameter.

An example of the output I am expecting can be found using Element.Level from the Clockwork package (see image 2) but I am trying to investigate multiple approaches.

inconsistent levels 2

 

Been there…done that. It’s a known issue. There’s a lot on github about it https://github.com/DynamoDS/Dynamo/issues/4310

For now, it’s safest to just use Clockwork node or write your own Python script to take care of it. One other option would be to use the archi-lab package GetBuiltInParameter node and use the BuiltIn Parameter “FAMILY_LEVEL_PARAM”

Thanks Ben, that’s a huge disappointment!

To add to your list, it looks like the Rhythm node Element.GetLevelNameAsString also does a pretty good job: http://dynamobim.com/forums/topic/level-reference-for-room/

inconsistent levels 3