Retrieving views (3d and plans) in a document that is running in the background

Hi Everyone!

I was trying to use an orchide node call 3DView collector, to get the 3d views. but it seems like it only reads the existing document. Are there any other alternatives to access and retrieve certain views in a revit file without opening the file?

Appreciate any comments, help, and insights.

Thank you!

Hello @bj9W6CG and welcome to the forum…you could try these here from genius loci

Hi Sovitek. Thanks for the response. Appreciate it.

I tried this earlier as well. However, it seems that those two only reads either the current/existing document. I was looking at the possibility of creating a flow, if possible, where i open a revit family file in the background using Document.BackgroundOpen node, then export the view of the background file without open it in revit.

Is this in anyway possible? or the tools/packages in dynamo are still limited?

is it families in project or in a folder ?..here from a folder with BG open, you could try birdtool as well…

Oh i see. Dynamo document to db document. I was looking for that kind of conversion node earlier. :slightly_smiling_face:

Thank you so much! Will definitely try this out.

I’ll keep you posted.

1 Like

Possible? Sure.

Recommended? Nope.

The reason being is that doing such processing with nodes results in ALL the families being opened for the duration of each step.

This is the manual equivalent of opening ALL the families, using alt tab to go back to the first document. Then select the desired views in the project browser and hit alt tab to go to document 2. Repeat that until you have highlighted each view in the project browser and are back on the first view. Then run the export command on the first file to export the dwf once for each selected view. Then hit alt tab to go into the next view and do the exports again. Repeat the alt tab and export step until you’ve exported all views. Then hit alt tab and close the first family. Repeat that until you’ve closed all views.

Keeping all of those open means you need 20x the size of the family worth of RAM per family. And each item in the list of results in dynamo requires additional RAM. And all the exports require more. And basically everything adds up to the point where your system won’t process any faster than if you didn’t background open the documents but instead saw Revit take the actions.

the better option is to wrap all of the steps (opening the file to get the views, export each view, and close the file) in a single for-loop which iterates over a list of files via Python.

Performance is 20x faster or more this way, and as the background open documents are difficult to build who would want to build something that much slower? This does mean you will want to build some Python, but most of that is available elsewhere on the site so you can copy/paste and make slight modifications.

The other option noted is BirdTools multi player, which makes Dynamo authoring easier, and processes everything at near the same speed as the Python method. You’d likely already be done with this method of you had it installed as you seem quite capable of doing the export in the active document.

2 Likes

Yeps agree with Jacob, if they are in a folder i would just use Birdtool and run it on the families in the folder…one by one as the tool do :wink: but doesnt close revit… you could try rvt exporter (BVN) here you have the option setup windows taskschedule…but it is a little bit slower than birdtool as it close and open revit in every run …here with birdtool…

2 Likes

Thank you for the insights Jacob. Appreciate it a lot. Will definitely take note of these. I will also look at bird tools.

Im treating this script as a plug-in through the use of pyrevit. Will test out if the loading/buffering period will take long.

Thank you for these tips sovitek.

Your suggestion worked. Will also take note of these suggestions!

Cheers!

1 Like