Hi Gavin, does this one also work on call-out views? Tried something similar in Dynamo (not using python), where the call-out didn't report correctly the elements hidden it that view, but only reported the elements hidden in the view where the call-out was based on.
Hi Gavin, excellent video as always and so so useful script. I followed your video and it works. We do have a model where we've linked the individual buildings and it's a nightmare to unhide the hidden elements within the links. Is there a way we could modify the script to search into the links as well? At the minute it counts the link itself as an element. Many thanks.
Unfortunately I believe the Revit API does not have the ability to hide/unhide linked elements. Best just hammer into user's minds never to do it! A thread discussing the issue: forum.dynamobim.com/t/unhide-hidden-linked-element And another: forum.dynamobim.com/t/unhide-elements-in-link/37793
Ah, thank you, I see. I'm just starting with Dynamo and I haven't contemplated APIs much yet. If we are able to select the elements within a linked model by tabbing, is there a way we could replicate that action with a Dynamo node or script? Aren't we able to replicate all actions we can do manually in Revit using Dynamo? One suggestion for a Dynamo script I would find useful is selecting levels or grids and swapping their extents from 2D to 3D and vice versa. Also locking/unlocking their ends to adjust individually, and turning grid/level heads on or off at each end. This could save a lot of time.
Unfortunately not. Revit was written a long time ago before programmers gave API's to developers to work with. As a result a lot of what is possible in Revit is not possible for us to use in development. Another example is that until Revit 2022 we could not programmatically make floors with holes in them, or even ceilings at all. Links have little API exposure for the most part, for example we still have no way to set custom link VG override settings. The API for grid head on/off and 2D/3D is fairly straightforward, but unfortunately I likely can't make a video for it specifically as I am developing a toolkit of this nature for the firm I work at currently. These are the API references that can help here though: Set extent type (2D/3D): www.revitapidocs.com/2024/6509627e-dda7-4d3d-eddf-4ed462a1f68c.htm Hide datum bubble: www.revitapidocs.com/2024/1349dc55-fbac-f114-f94d-42fc5fc10b1f.htm
I'm using a working script that can get text visible inside a cropped view even if the text is at the crop boundary (which is hidden by the crop). The problem is if I close and re-open the script it then only gets the text that is actually visible in the view (no text in boundary). I've used several filters but I get the same weird behavior. Still need to test your script but something I noticed.
So this script generally will only unhide elements which have been manually hidden by the user intentionally. If a text note is automatically hidden by the crop extent then it would not be unhidden by the script - I'm unsure there is any way to override that except to expand the annotation crop or disable it temporarily when running the routine first (the API can do this).
Hi Gavin! Ive recently had a discussion about one exotic topic - strategy of software updates in a company. Like every company has this document and every year updates Revit to a new version. My question is - is it true, that all modern (as he said) western companies create such strategy and update Revit every year?
Some firms skip a version if they can and choose a 'home' build to start new jobs in, but we usually work with clients and engineers that force us to be in many versions at once (e.g. some clients require latest build). At Architectus where I work we use Microsoft Intune to automate deployment of updates wherever possible.
@denisdetrov8362 already using it on my side but I'm not sure I will make the channel focus on it as it is very advanced. Too much to fit in my type of videos as the fundamentals of C are quite unique.
It depends what you are doing. If you want to protect/sell apps then it is worth it, and if you want faster/larger scale then it is also. Pyrevit and python can achieve a lot on their own orherwise.
Hello Gavin, it would be great if you make a video about Saving a New Central File to Revit Server using Dynamo. There is a C# code on thebuildingcoder blog, but nothing about how to make the same using Dynamo. Thanks for your videos!
Unfortunately these days I don't really use Revit Server, just ACC/BIM360. Don't have access to a testing environment as a result... maybe check with Dynamo forums. Some of the API on the example by Jeremy doesn't appear to be Revit API specific so I suspect it might not be as simple as this to do in Dynamo vs C#. The setup guide is available here for Revit server generally if it helps (old version, but same gist): www.autodesk.com/support/technical/article/caas/sfdcarticles/sfdcarticles/How-to-install-and-configure-Revit-Server-2014-or-2015.html
Great Content !! More of this please !
Thanks Marwan!
Hi Gavin, does this one also work on call-out views? Tried something similar in Dynamo (not using python), where the call-out didn't report correctly the elements hidden it that view, but only reported the elements hidden in the view where the call-out was based on.
Yes it should work on any view if it is active view.
Hi Gavin, excellent video as always and so so useful script. I followed your video and it works. We do have a model where we've linked the individual buildings and it's a nightmare to unhide the hidden elements within the links. Is there a way we could modify the script to search into the links as well? At the minute it counts the link itself as an element. Many thanks.
Unfortunately I believe the Revit API does not have the ability to hide/unhide linked elements. Best just hammer into user's minds never to do it!
A thread discussing the issue:
forum.dynamobim.com/t/unhide-hidden-linked-element
And another:
forum.dynamobim.com/t/unhide-elements-in-link/37793
Ah, thank you, I see. I'm just starting with Dynamo and I haven't contemplated APIs much yet. If we are able to select the elements within a linked model by tabbing, is there a way we could replicate that action with a Dynamo node or script? Aren't we able to replicate all actions we can do manually in Revit using Dynamo?
One suggestion for a Dynamo script I would find useful is selecting levels or grids and swapping their extents from 2D to 3D and vice versa.
Also locking/unlocking their ends to adjust individually, and turning grid/level heads on or off at each end. This could save a lot of time.
Unfortunately not. Revit was written a long time ago before programmers gave API's to developers to work with. As a result a lot of what is possible in Revit is not possible for us to use in development. Another example is that until Revit 2022 we could not programmatically make floors with holes in them, or even ceilings at all. Links have little API exposure for the most part, for example we still have no way to set custom link VG override settings.
The API for grid head on/off and 2D/3D is fairly straightforward, but unfortunately I likely can't make a video for it specifically as I am developing a toolkit of this nature for the firm I work at currently. These are the API references that can help here though:
Set extent type (2D/3D):
www.revitapidocs.com/2024/6509627e-dda7-4d3d-eddf-4ed462a1f68c.htm
Hide datum bubble:
www.revitapidocs.com/2024/1349dc55-fbac-f114-f94d-42fc5fc10b1f.htm
Always a great video Gavin =)
Thanks!~ :)
Thanks!
You're welcome!
I'm using a working script that can get text visible inside a cropped view even if the text is at the crop boundary (which is hidden by the crop). The problem is if I close and re-open the script it then only gets the text that is actually visible in the view (no text in boundary). I've used several filters but I get the same weird behavior. Still need to test your script but something I noticed.
So this script generally will only unhide elements which have been manually hidden by the user intentionally. If a text note is automatically hidden by the crop extent then it would not be unhidden by the script - I'm unsure there is any way to override that except to expand the annotation crop or disable it temporarily when running the routine first (the API can do this).
@@AussieBIMGuru That's correct. I was able to set the annotation crop para on/off inside a TransactionGroup and it worked. Thank you
Hi Gavin! Ive recently had a discussion about one exotic topic - strategy of software updates in a company. Like every company has this document and every year updates Revit to a new version. My question is - is it true, that all modern (as he said) western companies create such strategy and update Revit every year?
Some firms skip a version if they can and choose a 'home' build to start new jobs in, but we usually work with clients and engineers that force us to be in many versions at once (e.g. some clients require latest build). At Architectus where I work we use Microsoft Intune to automate deployment of updates wherever possible.
@@AussieBIMGuru Thank you very much! By the way I've seen you on recent podcast on bim pure, so are u gonna move to c# this year?
@denisdetrov8362 already using it on my side but I'm not sure I will make the channel focus on it as it is very advanced. Too much to fit in my type of videos as the fundamentals of C are quite unique.
@@AussieBIMGuru is it worth to move to c# from python?
It depends what you are doing. If you want to protect/sell apps then it is worth it, and if you want faster/larger scale then it is also. Pyrevit and python can achieve a lot on their own orherwise.
Hello Gavin, it would be great if you make a video about Saving a New Central File to Revit Server using Dynamo. There is a C# code on thebuildingcoder blog, but nothing about how to make the same using Dynamo.
Thanks for your videos!
Unfortunately these days I don't really use Revit Server, just ACC/BIM360. Don't have access to a testing environment as a result... maybe check with Dynamo forums. Some of the API on the example by Jeremy doesn't appear to be Revit API specific so I suspect it might not be as simple as this to do in Dynamo vs C#.
The setup guide is available here for Revit server generally if it helps (old version, but same gist):
www.autodesk.com/support/technical/article/caas/sfdcarticles/sfdcarticles/How-to-install-and-configure-Revit-Server-2014-or-2015.html