I’ve had a bit of struggle with Package Manager lately, but I’m happy to report I was able to get a new version of Bakery uploaded today. I’m pretty sure my issue was ‘too many backups in the dyfbackup folder’, so that may help you if you are having problems uploading. The new version is 2015.10.291:
Recently, I have made an effort to reduce dependencies, but there are still a couple like archi-lab and Clockwork.
Here is a list of my main nodes, with these comments
some have been forked or imported directly from other packages (see note about dependencies above), and full credit goes to those people who made the original versions
some are sub-nodes of main parent nodes that I have yet to go through and hide from the library. I have a big habit (bad?) of making nodes to handle one item and then using them in List.Maps.
Anyhow, here they are: Boolean Input to Variable String Output Bruteforce Get Elem ID and Two Parameters and Make List of Strings Bruteforce Get Parameter Value by Name Bruteforce Get Parameter Values when Multiple Entries Bruteforce Get Parameter via String Split for Single element Bruteforce Get Parameter via String Split V2 Bruteforce Get Two Parameters and Join to One String Built In Name Lister Check DYF folder for Dependencies in Package Folders Check for Duplicate Parameter Values and Make Selection Set Check for SetParameter Nulls and Report Info on Elements Check if Elements are Inplace ( In-place Families ) Check Project Shared Parameter against benchmark GUID Check Reference Level Offsets against a Tolerance Input Check Specific Shared Parameter has correct GUID Clean List of Indices to Remove Negative Values Clean Warning Types from Error Report HTML Collect all FamilyInstance using Element Types Collect All Tags in Project Collect Elements from List of Category Names Collect Elements in Rooms and Show Detailed List Collect from Link using Category and Parameter Value Collect Tag Elements in Specific View and Send Ids to Clipboard Combine Column from Three Excel Files into One Long Column Compare Two Columns From Excel and Report Differences Compare Two Lists by Item and Return Item Differences Compare View Filters added to Two Views or Templates Convert Category Name to Built In Category Name Convert List into List of Strings with Line Breaks Convert String with Line Breaks into List of Strings Copy Parameter to Parameter in List of Elements Copy Parameters Node for Nesting Process Copy Property to Parameter for List of Elements Copy Workset Name to Target Parameter Create Floors From Rooms v1 Create Floors From Rooms v2 Cycle Entries of one List by List of Lengths Cycle One Item Into List to Match Length of Other List Design Option Summary Design Option and Design OptionSet Document Design Option Sets Document Design Options Document Phases Does this Document Contain Category Duplicate View and Isolate Elements Duplicate View and Rename and Isolate Elements Duplicate View and Rename and Isolate for System Types Element List check for Inplace Families Element Name Universal Element Type for Element Lists Element Type for Linked File Element Lists Element Type for Linked File Large Lists Enumerate Worksharing Display Modes for Document Example FFE Category List for a project Export Family and Type Name with One Type Parameter to Excel Export Images using many input variables Export to Image using Directory and View Parameter Extract Specific Tag Entries from XML as Unique List File List from File Path showing Files in SubDirs File List from File Path File Size in MB from File Path Filter a List by a Given Value with second list passthrough Filter Element List by Parameter Value Filter Element List by Type Parameter Value Filter Items in List by String Contains and Return List and Unmatched Filter One List by String Search in Another List Filter Revit Selection to View Crop Elements and Names Filter Views with Two Criteria and Return Views Find Nearest Revit Level for a Given Z value Find Pipe Insulation on Workset – Get Host Pipes – Save to Selection Find Revit Level for Points by Elevation Find Sheets and Views Where an Element is Visible Find Worksets that contain Revit Link Instances Flat List to List of Strings Flatten List and Replace Null with NULL VALUE From File Path into RVT Build Information Get Actual Elements from Linked Tag Ids Get All Revisions Get All Revit Links as Element List Get Boundary Curve for One Room by Perimeter Get Boundary Curves from Room List Get Build Number and Worksharing from RVT file Get Build Number from All RVTs in a Folder Get Categories from Elements Get Categories with Builtins Get Categories Get Design Option Element by Set Name and Option Name Get Element Parameters and Split to Names and Values Get Element Position Rotate Mirror Get Element Room parameter from API Get Elements and Types for Certain Categories in Links Get Elements from Link Document Using Category Get Elements in Link using Name Search and Category Get Elements Parameter List and Show Unique Values Get Family and Type List for Project Get Family from Element Get Family List for this project Get Host Pipe ID from Pipe Insulation Get Indices of Null Values Get Info from a Linked Element Tag Get Link Document from Link Instance Id Get Linked Element from Element Id and Doc Get Linked RVT Documents Get List of Elements at OriginalNestingLevel Get list of GUIDs for a Specific Shared Parameter Name Get List of Linked Elements from Id and Doc Get Open Worksets and Write to View Parameter Get Open Worksets Get Project Location Details Get Pure Filename from Revit Link Name String Get Revit Link Names from an Element List Get Revit Selection and Delete Get Room Geometry and Filter by Level Elevation Get RVT Link Filenames with Element and Type Workset Info Get Sheet Element from View Get Standard Views as single list Get System Related Properties of Element Get Tagged Linked Element Id Get Two Parameters and Join to One String Get Type Parameter for Tagged Linked Element Get View Dependency as Internal not String Get View Parameter and Parse for Locate32 Search Get View Template for View Get Viewport Elements Using View Name Search Get Workset Info for RVT files without opening Get Worksets with all Properties If Equal Return Index using IndexOf ImageSettings Export Ranges ImageSettings File Types ImageSettings Fit Direction Type ImageSettings Image Resolution ImageSettings Zoom Fit Type Inplace Family Check Faster Is Family Instance InPlace Join Two single Strings to One single String List All Views List Design Option Information List Detailed View Information for a List of Views List Duct and Pipe Related Elements List DWG Link Information List Elements in View across Revit Links List Groups List Import Information List Nodes in DYFs for an Entire Folder List of Duct and Pipe Categories as Built in names List of float double to list of Int List of Model Elements simplified with Annotation removed List of Model Elements simplified List of System Related Categories List Parameter Info with Shared Parameter GUIDs List Phase Information List Revit Link Instances Visible in Active View List Revit Links Visible in View List Room Names from API and show failures List Shared Parameter GUIDs only List the View Worksets of All Tags in Project List Unique Categories Present in Set of Elements List View Filter Information for View or Template List Views not on Sheets List.RemoveItemsFromOtherList Load Selection Set as Elements Make Unique Identifier and Set it to Parameter Match Link Level with Level in Host using Elevation Mirror an Element Mirror Element Using Origin and Normal Vector One Face to Polycurve Outline one Room to its PolyCurves Parse and Split String to a List Parse CSV Text of Elem IDs to Actual Revit Elements Parse Error Report and Provide Summary List Parse IFC File Parse Revit Error Report HTML and Output Summary Parse Revit Journal File Place Family by Point Cloud Place Free Instances to Match Project by Category Polycurve to Nearest Revit Level by Elevation Process Family Type Excel Sheet and Get a Value To Write Project Base Point Details Read CSV to Flat List Remove Characters from end of single String Remove Chars from End of Single String Remove Empty Strings from List Remove Equal Items from List and Preserve Counts Remove First and Last Characters from String Remove First Revision from Each Sheet Remove List from List by Item not Value Remove Revision From Sheet subnode for listMap Rename Families by Replacing Prefix Rename Families with a Prefix Rename View by Replacing Prefix Rename Views by Appending Selected Suffix Report Dynamo Package Details by Folder Report on Inplace Families Report Revit Link Worksets Report RVT Links Visible in Views on Sheets Room to Element Geometry Test for Preflight Rooms to PolyCurves Rotate Families Around Origin by Angle RVT Information for All RVTs in a Folder Search for Certain Build Number in Folder of RVTs Search for Generic Annotation on Sheet and Copy Id to Clipboard Search for Type Parameter Value in List of Elements and Return Elements Search One List Based on Second List and Get Values Select based on a single builtin name Send Element IDs to Clipboard Set Design Option by View Parameter Set Instance Parameter by Type Parameter Set List of Values to List of Elements for One Parameter Set One Parameter to Many Elements Set OriginalNesting Level Parameter for all FamilyInstances Set OriginalNestingLevel Parameter to Element Set Parameter of View based on a Character in Sheet Number Set Visible RVT Links to Parameter for Current View Set Workset for a Single Element Set Worksharing Display Mode for View Show Dependency Nodes for one DYF Show Element Workset as Internal db name Show List of Revit Links that are never visible on Sheets String Replace using RegEx String Search All Element.Parameters for a Single Element Summary and Node Search for a Folder of DYFs Summary of Selected Parameter Values for Duct and Pipe Elements Summary of System Related Elements Summary of Unique Values present in List Transpose Data within Excel Sheet UUID GUID Generator for Lists View Statistics View Templates for View List Write Empty Linked Tag Information to Excel Write Parameters from One Element List to Another Write Shared Parameter Check to Excel Write to Excel using only Data and File Path Inputs
I think its safe to say that Dynamo package deployment is still a work in progress, particularly when considering issues of intellectual property along with the complexity of IT networks in large organizations. For that reason, any step to make Dynamo easier to deploy and use is a good idea.
Dyno Browser gives us a very simple way to share and view DYN definitions using a certain file structure and the Roaming directory inside a user’s profile.
Start Dyno Browser from the Dynamo ribbon dropdown (Visual Programming)
Right-click in the pane and select “Open Workspaces Storage”
In this folder, make a new top level folder and then put some DYN files in it, like this:
Once we have some DYN files in the right location, we can right-click in Dyno Browser and select “Rescan Workspaces Storage”. This will update the list of available definitions in the Dyno Browser pane.
Now, right-click on the definition you want to run and select “Open Workspace in Dynamo”
You may not see your definition straight away, so just press the X button on the Start tab to close that tab. Your definition should now be visible
So, what is good about this? Because now we can create a shortlist of important or ‘approved’ DYN files and deploy them using the appropriate file structure to the team, using Roaming profiles.
There is actually a bit more functionality available in Dyno Browser: it supports using JSON to feed certain preset values to Dynamo nodes. This is a bit more in-depth, and can be review at the home page.
Konrad Sobon has released a very cool and powerful new node package for Dynamo called Bumblebee. I did some very basic beta testing on some of his code a while back, and it looked promising then. It has some more polish now and it will certainly help us get the Revit to Excel connection “buzzzzzing” nicely through Dynamo 🙂
It supports some nice things like writing to multiple sheets at once, offset to specific Cell entries, and writing to multiple locations in the same sheet. Most of this is accomplished through the BB Data node:
There is even some handy documentation already in place: For specific instructions on how to use each one of the components and what is possible to achieve with each one of them you can refer to Bumblebee Primer: BB Primer
Honestly, I’m not that great at Dynamo and Python and the rest… hopefully one day? In the meantime I have been helped a lot by Andreas and Konrad and Julien and a few others on the forum. I’ve decided to combine my currently released custom nodes into a package called Bakery that I intend to add to and maintain. You can download it through the package manager.
There has been a bit of strange talk around the social web and some forums lately about whether or not Dynamo is truly useful, and whether it has a real future in the BIM environment. I admit, at the moment it is still leaning to the ‘enthusiast‘ side (but only just), and I think as you read over the posts and resources I have selected below (many of them from the past couple of months), you will see that the momentum and value of Dynamo in our Revit world is accelerating. As usual, full credit goes to original posters and content creators.
The software is hardly at version 0.8 (officially)… just wait for 1 point oh!
Quote: Finally, a few links, details and instructions for those of you who want to get rolling with the tools. The nodes are available in Dynamo’s package manager, using a recent daily build of Dynamo. We expect an official release with this functionality by the end of October, but in the meantime you can use a daily build to use the tools. … To install the package, search for the name in the Dynamo package manager – Dynamo > Packages > Search for a package > ‘Energy Analysis for Dynamo’ – and install the package. Once the package is installed, you’ll likely want to check out our sample files in the package’s ‘extra’ folder, and watch our first round of tutorial videos (1,2). … We should also note that some analytical information (constructions, schedules, etc.) can only be analyzed using Dynamo on top of Vasari. The source code is available on Github under an Apache v2 license – it is open for anyone to use and modify.
or to use Dynamo package manager: Open Dynamo from the start menu, Packages, Search for a Package, wait to synchronize package list, then click to install DynaWorks
Install GetClashIDs too if you want
Mine installed itself to this location: C:UsersLuke JohnsonAppDataRoamingDynamo .7packagesDynaWorks15bin
To get my install to work, I had to copy missing XML files from step 2, and then used Import Library and chose DynaWorks15.dll from the path above to ‘refresh’ the install and display the extra nodes (you might not have this problem)
Open it in Dynamo, point it at one of your Navisworks files by modifying the String property,
Click Run in Dynamo, and it will automatically open the file and run all the Clash Tests.
The above steps should get you up and running… but there is so much more capability here that it deserves more than one post. As Adam mentions in his post, you can use DynaWorks to run Navisworks in hidden mode. I’m looking forward to seeing how others use this … particularly in getting Navisworks to communicate with Revit more effectively.