Dynamo is a rapidly evolving application. The team develops on 2 fronts, one working towards a more stable and reliable tool that is ready for production workflows, and another that seeks to push the boundaries of what is currently possible with the tools. 0.6.3 is the latest stable release, ready for use in offices and a dependable step forward from workflows that have been developed in 0.6.2. The pre-release 0.7 release represents a significant refactoring of the underlying code. This means that we have removed and reorganized large sections of the basic code to allow for more efficient computation, easier future development, and more powerful tools. This also means that it is less stable, which is where you, dear user, come in. We need help in testing the tools, and we need to hear your opinions about what you think is helpful and worth pursuing, and what is not important to you. Also, the stuff in 0.7 is wicked awesome, and everyone should try it.
Where can I get 0.7?
0.7 is available from the download page of this site. Look for the section called "pre-release".
What can 0.7 do that 0.6.3 can't?
- Geometry tools: While 0.6.3 has a reasonable number and variety of Solid modeling functions, and some Surface creation tools, these are relatively limited. Dynamo 0.7.0 has a much more extensive collection of geometric operations that are available in stand alone mode as well as when running in Revit. Along with more Solid and Curve tools, this also includes Polysurface, Nurbs Surface, and Surface tools.
- Scripting interface and Code Block Nodes: 0.7.0 still supports the use of IronPython scripting, and expands to include DesignScript for direct entry of text based code into nodes. However, the use of DesignScript syntax in nodes isn't just about allowing users who are code savvy to have a compact method to define complex relationships. The nodes themselves change and adapt based on the code the contain. Adding variables will create ports. For every value that is returned on a line, there is an output port on the node. This becomes a fundamentally different kind of interaction between Graph based programming and Text based programming. Novice users can quickly generate lists of data and ranges. More experienced users can author complex relationships that can be easily debugged through the interface and make hybrid workflows with modular pieces of code that interact with larger graphs. Please see this document for learning DesignScript syntax and capabilities and watch for more blog posts and forum commentary on how to make the most to these tools.
In an effort to get the initial release out for review, testing and inspection, there are a few regions of functionality that are not yet available in 0.7.0 but will be back in subsequent releases:
- Upgrade: 0.6 Dynamo files cannot be opened in 0.7.0. We are actively working on the upgrade mechanism
- Package Manager: currently disabled until migration is working
- Recursion in custom nodes: Custom nodes with complex interactions can still be created, but recursive workflows are temporarily unavailable.
- Revit Element explosion to geometry. Currently users cannot generically extract geometric information from Revit elements. However, there are different tools that, on a per element basis, can extract geometric data. For instance, after selecting a curve from Revit, a user can look in Revit>Element>CurveElement>Query>Curve to extract the geometry. Similarly, a Family Instance can be queried for such items as faces, curves, location, etc. We welcome your ideas on workflows that you would like to see supported.
- Revit Elements created in a Dynamo session are not "remembered" in subsequent sessions. New elements will be created when files are re-opened, rather than the 0.6.3 behavior where previously created elements are modified.
You will see more releases at a relatively quick pace (think weeks instead of months). Our immediate targets are to get back to feature equality with 0.6.3 in terms of Revit interaction support and stability, upgrade paths for 0.6.3 workflows, and the return of the Package Manager. More importantly, our long term goal with the 0.7 refactoring is to allow for easy expansion of Dynamo by end users. With the package manager and custom nodes, we opened up the application to users directly sharing new tools with each other. We intend to build on this system with functionality that allows users to share complete compiled libraries with each other, and to incorporate libraries of functionality that may not have ever been intended for Dynamo at all. More generally, we will continue to build a tool that can not deeply interact with Revit, but also with applications in adjacent design spaces.