ZeroTouch Nodes Development for Dynamo
This material will go through on how to start creating your own Dynamo ZeroTouch nodes using Visual Studio 2017.
A Zero Touch Node (ZTN), is a custom node written in C#. A ZTN can be obtained by simply importing a DLL inside of Dynamo. It's called zero-touch because that's all you need to do : Dynamo is smart and will automatically map all methods & properties from public classes to nodes :
public staticmethods that return the class type will appear as constructor nodes in Dynamo, identified with a green
publicmethods will appear as action nodes, identified with a red
publicproperties will appear as query nodes, identified with a blue
Why should I even bother?
Although it might seem daunting at first in particular if you've never coded in C# or used Visual Studio, by writing your own ZTN you will benefit from:
- The .NET framework
- A solid IDE (Integrated Development Environment)
- Debugging tools
- Thousands of third party libraries
- Performance boost. C# nodes are more performant than Python ones most of the time.
This type of node (ZTN) needs to be compiled into a
DLL every time you want to make a change, which means your code is safer if you are going to distribute it, but it does make graphs dependant on this external
DLL file. This means that for small tasks, Python nodes might still be a better solution as the code is embedded in the Dynamo
.dyn file itself.