Today I was asked to help create some roof plans for a glass canopy system and then tag each panel with its unique Mark value. Well, this sounds easy enough in Revit if you ask me, so why Dynamo? I am definitely not trying to over-complicate my life, however I do enjoy automatic somewhat mundane tasks. Normally, tagging is not one of them, unless those tags just don’t seem to be willing to be placed exactly where I want them. In that case my only option is to either move them around manually, or call in the big bad Dynamo! I chose the latter and created another node called “Create Annotation Tag”, that you can now enjoy as part of the Package Manager. Here’s the problem:
You can see tags generated through standard method of Annotate>Tag All are overlapping randomly not only with each other but also with panel edges. That’s not very good looking plan. Here’s an image of what you can do in seconds with my new node:
Now that is a bit better! Good news is that you can use it on any element, in any view, and with any tag…it basically is a Revit’s Tag All tool but with extra control over where the tag actually gets placed. Remember that 3D Views have to be locked to be able to place Annotation.
Here’s a YouTube video with a brief demonstration.
Any luck using this for placing room tags? I’m getting “NULL” when i try to use it for that. Thanks.
Attachment: 2015-06-10_1031.png
This might sound like magic but Room Tags are not considered Annotation Tags per Revit API and actually have their own overload for placement/creation. newRoomTag = doc.Create.NewRoomTag(roomId, locationUV, viewId). Create Annotation Tag node will not work with Room Tags. Please try attached image instead. Good luck!
Attachment: Capture.png
Konrad,
Thanks for making all these tools! I am trying to use the “create annotation tag” on revision clouds, but am having trouble defining the location. The clouds themselves exist in views, not model space so I cant find a way to pull a location from them. Any thoughts?
Richard,
A RevisionCloud is not an AnnotationTag Element. It has its own separate create method. If its not already in Dynamo, you would have to add it via something like a ZeroTouch node or a Python custom node. Also, a “location” for a revision cloud is more like an Array of curves instead of a single Point. Please see attached for a Revit API method that you would have to implement for this one:
Attachment: Capture2.png
Sorry, I wasn’t clear. The clouds are already created, but I wanted to tag them with a revision triangle using the “create annotation tag” node. I will take a look at the revision cloud API methods, the IList variables seem like they could be used to find a location for the revision tag/triangle. Thanks for your help!
Konrad,
I found the method I need to use RevisionCloud.GetSketchCurves() but cannot implement it properly. I tried adjusting your “filled region boundary curves” node by replacing the i.GetBoundaries() call with i.RevisionCloud.GetSketchCurves() but get the following error:
Warning: IronPythonEvaluator.EvaluateIronPythonScript operation failed.
Traceback (most recent call last):
File “”, line 47, in
AttributeError: ‘RevisionCloud’ object has no attribute ‘RevisionCloud’
I then tried a dumbed down version (see attached) and get the following error:
Warning: IronPythonEvaluator.EvaluateIronPythonScript operation failed.
Traceback (most recent call last):
File “”, line 30, in
TypeError: expected RevisionCloud, got list
I am new to working with the Revit API… In your boundary curves node, what are the process list and ToDSType functions accomplishing? (I am sure I am sending a revision cloud into the python script btw, or at least that’s what dynamo is telling me I am doing)
Any help would be appreciated. Thanks you!
Attachment: RevisionCloud-Curves.png
I had to “unwrap” the dynamo data :) my revision cloud sketch lines script works now. sorry for hijacking your comments section!
I am glad you were able to answer your own question. I am sorry I wasn’t able to respond but I am currently traveling.
Hi there, I’m a beginner in Dynamo. Was wondering is there any possibility that you might be able to share the dynamo coding here to me?
Sorry, just follow the instructions. If you get lost post here or on the Dynamo forum and I am sure people will help you get it right. I believe that you will learn more the hard way, than the easy way.
Hey Konrad,
I found your Annotation Tag Package and would love to use it, however, Dynamo 1.2.1 doesn’t support it.
Would you be a good sport and update your package :)
Thanks mate!
….. Never mind me, I was using the stand-alone Annotation Tag package instead of the Archi-lab package. All is well now.
Thanks!
awesome!
Hi Konrad,
Any luck using this for placing Area tags? I’m getting “There is no loaded tag type that can be used when tagging referenceToTag with tagMode” when I try to use it for that. Thanks.
Konrad,
Thanks sharing. I found the Create Annotation Tag. However, I am receiving an error that it cannot be opened in my version of Dynamo (1.3.3.0). Is there any way to update the package?
Thanks in advance,
David
You should be able to get any version of the package via Package Manager.
Hello Konrad
I have an issue I created this node to place tags on foundation as part of big Revit/Dynamo project. But for the life of me I can not get this to place correctly without running twice.
I can help, but you gave me zero info about what the issue is. Please post some relevant information and I will try and answer.
This may sound like a silly question but do you have a copy of the script somewhere in your posts?
Would love to have a play
Hi, unfortunately not. I don’t post ready to go scripts, as I usually want people to follow the post, and re-create it. That way they can learn more. I know its not very efficient but that’s how I have been doing these posts for a while now. I might change that for the new ones.
Hi,
Is it possible to get an image of this script? so I can see nodes etc.
Mhmmmm…I don’t think so. It’s an old post from 2007. It’s 2019 so I don’t think I will be able to dig this out of the archives. Sorry.
Hello, I am looking for a method in Dynamo to indicate the value of z (elevation) in the building profile extracted with Dynamap.
I had found your tool , but it does not run in the current version of Dynamo, would you have indications to help me?
thank you very much
Can you be more specific as to what is not working in current version of Dynamo?
Is there a way to place keynote tags with dynamo?
I don’t think so. Please check the Revit Forum and Dynamo Forum, perhaps someone knows better, but I think that Revit API doesn’t support it.
I would appreciate if you upload this dyn file as I couldn’t find it in your website.
Thank you.
This is an old post. I doubt this would work for anybody at this point. Also, I don’t usually post sample files. The goal of a step by step tutorial is to follow it, recreate what I did, and hopefully learn something new in the process. I do post sample files for my Patreon supporters.
Hi Konrad, sorry to ask this question even in 2022.
For my company, juniors have to tag all in every views for window schedule for condo unit.
It has a lot of views, and they have to go to each view to tag all not tagged.
I found your annotation tool but i cannot be able to locate and tag all the curtain panels in elevation view without tagging all the panels on perpendicular walls, even the ones behind it.
However, as i shown in screenshot, the tag all not tagged from Revit API works fine, i just need to know how to script it so that we can tag multiple views (50views) one shot. Thanks a lot.
Attachment: Capture-1.png
Jason,
Sounds like a lot of fun! Yes, this can probably be done/automated. I would really need to get my hands on some sample files so I can test things out, but in general a tagging tool like that should be doable.