Material Tag Not Hosted to Curtain Panels

Hi Forum,

I have managed to get a simple script going to automate material tags on curtain panels. However the issue I am facing at the moment is that, the tag is simply using the point location from center of the panels without actually hosting to them, hence the null value.
Is there anyway to make tthis work?

Thanks in advance

would python be required for this instance?

Hi @Kevin_Shen

Yep! Can be found here:


Hi Kulkul,

Thanks for providing the link. The python bit is still new to me
Is there a way to place the material tag in the centre of the surface and remove the leader?


Hi Kulkul,

I have had no luck so far, in fact, a bit clueless even where to start. Would you be able to assist me with the above queries?

Much appreciated

@JacobSmall @Vikram_Subbaiah

Hi guys,
Are you able to assist on this, or links to any reference readings to remove tag leader and adjust material tag placement location?

Much appreciated

I might have time later today or tomorrow, but you’ll need to provide a full dataset - meaning a Revit model to test on, your current dyn including notations for any packages in use, and the python code posted here via the preformatted text setup. The nature of the resolution (editing python code which requires calling the Revit API) means I have to actually be at my computer to trouble shoot effectively, so I can’t work during my commute, lunch or coffee break(s). As a result if it takes me any measurable amount of time to get to your current stumbling block then I likely won’t have a solution for awhile (have to catch up after vacation and have two large presentations to prepare for).

As an alternative presented in the name of time, have you considered other graphical means of presenting the data in question, in this case meaning a filled pattern and a legend on the sheet? I personally prefer that method of communicating this type of data as it not only conveys the content but gives a clearer picture when standing on sight and trying to confirm panels were installed in the correct location.

Hi @JacobSmall

Sorry I was away for a few weeks and didn’t get a chance to post the files prior to my leave. I believe using a surface pattern would be a good alternative to convey the data content, however I am currently quite restricted by the company’s standards. But I will bring it up in the next BIM meeting and hopefully have it resolved.

Meanwhile on this topic, and also for my own learning curve, I would still love to understand the logic behind how to execute this python bit. Please find the test dyn & rvt files attached.

Thanks in advance,


MatTag.dyn (15.8 KB)
Test File.rvt (392 KB)